我有几个模块现在需要 JNDI。
其中一个模块通过 Apache Tomcat 运行,而其余模块作为 J2SE 应用程序独立运行。
我能够毫无问题地配置使用 tomcat 的模块,并且我搜索了一下并收集到 JBoss JNP 可以成为一个很好的独立 JNDI 服务器来使用。
我不明白的是如何重用我已经配置的资源定义(对于通过 context.xml 文件中的 tomcat 运行的模块)。
假设我在 XML 文件中定义了以下资源:
<Resource name="jdbc/dataSource" auth="Container" type="javax.sql.DataSource"
driverClassName="com.mchange.v2.c3p0.ComboPooledDataSource"
url="jdbc:sqlserver://******
username="**" password="**"/>
启动 JNP 的相关代码是:
System.setProperty("java.naming.factory.initial", "org.jnp.interfaces.NamingContextFactory");
System.setProperty("java.naming.factory.url.pkgs", "org.jboss.naming:org.jnp.interfaces");
NamingBeanImpl jnpServer = new NamingBeanImpl();
jnpServer.start();
如何让InitialContext
实例识别jdbc/dataSource
绑定?