我有一个奇怪的问题。我已经安装了 JbossAS 7.1.1 并成功部署了我的 ear 文件。
我的客户正在运行 tomcat 6.035。
我可以对我的 jboss 部署进行成功的 EJB 调用 - 但是一个特定的 EJB 调用失败。
我的客户端环境设置如下:-
Hashtable<String, String> env = new Hashtable<String, String>();
env.put(Context.INITIAL_CONTEXT_FACTORY,"org.jboss.naming.remote.client.InitialContextFactory");
env.put(Context.URL_PKG_PREFIXES, "org.jboss.ejb.client.naming");
env.put(Context.PROVIDER_URL, "remote://localhost:4447");
env.put(Context.SECURITY_PRINCIPAL, "abc");
env.put(Context.SECURITY_CREDENTIALS, "123");
env.put("jboss.naming.client.connect.options.org.xnio.Options.SASL_POLICY_NOPLAINTEXT", "false");
env.put("jboss.naming.client.ejb.context", "true");
env.put("remote.connectionprovider.create.options.org.xnio.Options.SSL_ENABLED", "false");
env.put("remote.connection.default.connect.options.org.xnio.Options.SASL_POLICY_NOANONYMOUS", "false");
//env.put("remote.connection.x1.connect.options.org.xnio.Options.SASL_POLICY_NOANONYMOUS", "false");
logger.debug("Added security ");
try {
ctx = new InitialContext(env);
} catch (NamingException e) {
logger.error("Can't get initial context.");
e.printStackTrace();
}
轨迹很奇怪。它正在寻找 RemoteNamingEJBClient 请帮助 - 我不知道。
18:03:25,541 WARN [org.jboss.modules] (EJB default - 8) Failed to define class org.jboss.naming.remote.client.ejb.RemoteNamingEjbClientContextSelector in Module "org.jboss.remote-naming:main" from local module loader @50988 (roots: jbossAS7/modules): java.lang.LinkageError: Failed to link org/jboss/naming/remote/client/ejb/RemoteNamingEjbClientContextSelector (Module "org.jboss.remote-naming:main" from local module loader @50988 (roots: jbossAS7/modules))
Caused by: java.lang.NoClassDefFoundError: org/jboss/ejb/client/ContextSelector
Caused by: java.lang.ClassNotFoundException: org.jboss.ejb.client.ContextSelector from [Module "org.jboss.remote-naming:main" from local module loader