目前我正在将它用于JBoss,但我还需要一些外部Tomcat:
Properties props = new Properties(); props.put(Context.PROVIDER_URL, "jnp://localhost:1099"); props.put(Context.INITIAL_CONTEXT_FACTORY, "org.jnp.interfaces.NamingContextFactory"); props.put(Context.URL_PKG_PREFIXES, "org.jboss.naming.client"); props.put("j2ee.clientName", "abtest");
使用Google搜索我发现了这些,但我无法弄清楚Tomcat的端口配置接受JNDI连接...
props.put(Context.INITIAL_CONTEXT_FACTORY, "org.apache.naming.java.javaURLContextFactory"); props.put(Context.PROVIDER_URL, "http://localhost:???");
请你能救我吗?
据我所知,tomcat不支持远程访问其JNDI树,因此只能从tomcat进程访问它.因此,tomcat为默认的InitialConext设置了所有初始化参数,你可以像这样使用它:
// Obtain our environment naming context Context initCtx = new InitialContext(); Context envCtx = (Context) initCtx.lookup("java:comp/env"); // Look up our data source DataSource ds = (DataSource) envCtx.lookup("jdbc/EmployeeDB"); // Allocate and use a connection from the pool Connection conn = ds.getConnection(); ... use this connection to access the database ... conn.close();
您还可以在此链接中了解更多tomcat中的JNDI