无法在 JBoss AS 7.1 中初始化 InitialContext



我无法初始化InitialContext并查找字符串。这是我的代码片段:

java.util.Hashtable env = new java.util.Hashtable();
env.put(Context.INITIAL_CONTEXT_FACTORY,"org.jboss.naming.remote.client.InitialContextFactory");
env.put("java.naming.provider.url","remote://localhost:4447");
env.put("java.naming.factory.url.pkgs","org.jboss.naming:org.jnp.interfaces");
try
  {    
    if(env != null)
      ic = new InitialContext(env);
    else
      ic = new InitialContext();
this.connectionFactory = (ConnectionFactory)ic.lookup("java:/ConnectionFactory");
this.queue = (javax.jms.Queue)ic.lookup("java:jboss/exported/jms/queue/test");
}catch(Exception e){
e.printStackTrace();
}

总是ic是空的,我得到异常NullPointer Exception.谁能告诉我我做错了什么或任何配置?任何建议/建议都是可以接受的。

编辑 :1

20:19:01,678 ERROR [stderr] (http-localhost-127.0.0.1-8080-5)
javax.naming.NamingException: JBAS011843: Failed instantiate InitialContextFactory 
org.jboss.naming.remote.client.InitialContextFactory from classloader 
ModuleClassLoader for Module "deployment.TRH_SAS_V2.war:main" from Service Module 
Loader
20:19:01,682 ERROR [stderr] (http-localhost-127.0.0.1-8080-5) 
at  org.jboss.as.naming.InitialContextFactoryBuilder.createInitialContextFactory(InitialContextFactoryBuilder.java:64)
20:19:01,684 ERROR [stderr] (http-localhost-127.0.0.1-8080-5)   at javax.naming.spi.NamingManager.getInitialContext(Unknown Source)
20:19:01,686 ERROR [stderr] (http-localhost-127.0.0.1-8080-5)   at javax.naming.InitialContext.getDefaultInitCtx(Unknown Source)
20:19:01,688 ERROR [stderr] (http-localhost-127.0.0.1-8080-5)   at javax.naming.InitialContext.init(Unknown Source)
20:19:01,690 ERROR [stderr] (http-localhost-127.0.0.1-8080-5)   at javax.naming.InitialContext.<init>(Unknown Source)

看起来你的类路径上没有 InitialContextFactory 类。你需要的 jar 将位于 JBoss 安装的 bin/client 目录中。有关详细信息,请参阅此链接:https://docs.jboss.org/author/display/AS72/JNDI+Reference

最新更新