1

我有两个在不同主机上运行的 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(//一些参数...);” 被调用,我得到一个异常:

没有 EJB 接收器可用于处理调用上下文 org.jboss.ejb.client.EJBClientInvocationContext@1fde5aa 的 [appName:global,modulename:pinter,distinctname:pinter-ejb] 组合

4

1 回答 1

0

JBoss AS7 是安全的……也就是说,您不能只是远程连接到它。您必须正确设置安全性。本文档很好地详细说明了来自远程服务器实例的 EJB 调用

于 2013-06-06T22:37:11.993 回答