我正在将服务从Jboss 5.1迁移到Jboss EAP 7.0.0。 它使用maven 3.9.9在jdk 1.8中成功构建,并成功部署在jboss EAP 7.0.0中。
在部署期间,它显示-(id)initWithArray:(NSArray *)array
。此服务仅包含本地ejb没有远程ejbs。
EJb查找课程
java.lang.ClassNotFoundException
堆栈追踪 -
String contextFactory = SysConfigUtil.getJndiFactory();
String ejbLocalJndi = SysConfigUtil.getTimerEjbLocalJndi();
Properties environment = new Properties();
environment.put(Context.INITIAL_CONTEXT_FACTORY, contextFactory);
Context ctx;
environment.put(Context.URL_PKG_PREFIXES, "org.jboss.ejb.client.naming");
environment.put("jboss.naming.client.ejb.context", new Boolean(true));
ctx = new InitialContext(environment);
logger.info("************ before lookup");
ejb = (ISystemConfigurationTimerLocal) ctx.lookup(ejbLocalJndi);
logger.info("************ after lookup");
答案 0 :(得分:1)
在任何版本的JBossAS或WildFly中查找本地对象时,您从未需要为new InitialContext()
提供环境属性。
Context ctx = new InitialContext();
ejb = (ISystemConfigurationTimerLocal) ctx.lookup(ejbLocalJndi);
应该是你需要的一切。
FWIW,您提供的属性配置适用于远程独立客户端,即使对于服务器也不正确 - >服务器呼叫。