5

我正在尝试在要部署在 Tomcat 7 中的 Web 应用程序中设置 JNDI 查找。我在jndi.properties文件中指定了以下属性:

java.naming.factory.initial=org.jnp.interfaces.NamingContextFactory, java.naming.factory.url.pkgs=org.jboss.naming:org.jnp.interfaces, java.naming.provider.url=localhost:1199

但是当我得到初始上下文并检查它的属性时,它显示java.naming.factory.initial更改org.apache.naming.java.JavaURLContextFactory和所有其他属性都与文件中的相同。jndi.properties我不明白为什么这个单一属性会发生变化?我怎样才能防止这种情况并强制tomcat使用我指定的属性?

4

3 回答 3

2

我相信 JNDI 属性应该是特定于供应商的,您尝试输入的是 Jboss JNDI 属性,并且可能已经恢复到 Tomcat 特定属性。尽管您可以尝试以编程方式覆盖它们,但它可能无法正常工作。

于 2013-06-14T09:01:37.280 回答
0

我认为你应该将你的属性附加到你的 catalina.properties 文件中,它在你的 $tomcat_home/conf 下。

于 2014-04-29T23:28:18.693 回答
0

您应该将所有这些内容放入 META-INF/context.xml 文件中的 Resource 元素中,并通过 java:comp/env URL 查找该资源。这就是 Tomcat 试图在这里设置的:该名称空间的对象工厂。

于 2013-06-15T01:01:13.803 回答