Jetty JNDI配置与Spring查找

Jetty JNDI配置与Spring查找,spring,jetty,jndi,Spring,Jetty,Jndi,我在Jetty服务器上的JNDI配置有问题。我无论如何都不能将它配置为Spring(3.0.5)可以检索JNDI变量的方式 我有一些凭证,我不想存储在属性中,这样它就不会存在于git repo中。我的web应用程序运行在Jetty(最新版本9.2.3)上,因此我想到了在Jetty web应用程序上下文中存储此凭据的想法。Jetty为这种解决方案提供了一种新的解决方案。因此,我在WEB-INF/like中创建了jetty-env.xml文件,如下所示: 如前所述,在不使用web.xml的情况下

我在Jetty服务器上的JNDI配置有问题。我无论如何都不能将它配置为Spring(3.0.5)可以检索JNDI变量的方式

我有一些凭证,我不想存储在属性中,这样它就不会存在于git repo中。我的web应用程序运行在Jetty(最新版本9.2.3)上,因此我想到了在Jetty web应用程序上下文中存储此凭据的想法。Jetty为这种解决方案提供了一种新的解决方案。因此,我在WEB-INF/like中创建了jetty-env.xml文件,如下所示:



  • 如前所述,在不使用web.xml的情况下添加自动绑定
  • 
    服务器/用户名
    

    还有许多其他的,但它就是不起作用。请给我一个工作的例子,我如何才能让它工作。谢谢大家!

    好的,我已经设法让它工作了。问题在于配置。我正在使用Jetty 9,因此根据官方文档()在Jetty中使用JNDI之前需要做的唯一一件事是通过执行添加到startd=JNDI
    JNDI
    模块添加到
    start.d
    。这并不完全正确,因为这将启用JNDI,但不包括
    jetty env.xml
    内容(jetty甚至不接触它)。我一直在阅读有关容器生命周期的内容,并注意到为了使用JNDI,需要在web应用程序上下文配置类集中包含以下类:

    • org.eclipse.jetty.plus.webapp.EnvConfiguration
    • org.eclipse.jetty.plus.webapp.plus配置
    默认情况下,这是在
    $JETTY_HOME/etc/JETTY plus.xml
    中完成的,它是
    plus
    模块的配置文件。因此,为了将这些类添加到Jetty容器生命周期中,并通过包含和解析Jetty-env.xml,除了jndi模块之外,还需要启用plus模块(jndi不依赖于plus)!因此,我通过调用
    --add to startd=jndi,再加上
    (模块之间没有空格),修改了start.d配置,一切都开始正常工作