我在不同的主机上运行了两个Jboss 7.1最终实例。
我尝试从另一台主机调用一台主机中的服务,如下所示:
try {
final Hashtable<String, String> props = new Hashtable<String, String>();
props.put(Context.URL_PKG_PREFIXES, "org.jboss.ejb.client.naming");
// create the InitialContext
final Context context = new javax.naming.InitialContext(props);
CService=(CServiceEJBRemote)context.lookup("ejb:......//(rute)ServiceEJBBean!(rute) ...ServiceEJBRemote");
// invoke on the bean
final boolean resp = CService.verificarUsuario(//some parameters...);
System.out.println("Received greeting: " + resp);
} catch (Exception e) {
throw new RuntimeException(e);
}
我的EJB打包在EAR中,Webclient打包为WAR。我已将“jboss-ejb-client.xml”放在EAR中(在WEB-INF / classes目录下)。
当“CService.verificarUsuario(// some parameters ...);”时被调用,我得到一个例外:
没有EJB接收器可用于处理调用上下文的[appName:global,modulename:pinter,distinctname:pinter-ejb]组合org.jboss.ejb.client.EJBClientInvocationContext@1fde5aa
答案 0 :(得分:0)
JBoss AS7是安全的......意思是,你不能只是远程连接它。您必须正确设置安全性。本文档详细介绍了EJB Invocations from a Remote Server Instance。