代码之家  ›  专栏  ›  技术社区  ›  rich

如何从外部容器访问JBoss4.x上的远程EJB2.1bean

  •  1
  • rich  · 技术社区  · 16 年前

    我有一个会话bean,在ejb-jar.xml和jboss.xml中定义。它由ejb名称、远程和主接口以及一个实现来定义。

    当我启动JBoss并查看JNDI树时,主接口似乎位于ejb名称的JNDI名称下(我尝试在ejb-jar.xml中定义JNDI名称和本地JNDI名称,但没有明显的效果)。 但是远程接口没有出现在JNDI列表中。

    如果我尝试从JUnit测试用例中通过JNDI查找来访问ejb名称,事情会变得混乱,可能是因为我正在访问一个主接口。

    你知道我可能会错过什么吗?提前谢谢。

    1 回复  |  直到 16 年前
        1
  •  3
  •   Pascal Thivent    16 年前
    1. 把钥匙放好 jboss-client.jar 在客户端类路径上

    2. jndi.properties

      java.naming.factory.initial=org.jnp.interfaces.NamingContextFactory
      java.naming.factory.url.pkgs=org.jboss.naming:org.jnp.interfaces
      java.naming.provider.url=jnp://localhost:1099
      
    3. 对远程接口的JNDI名称执行查找(JBoss默认情况下是这样的)

      Context c = new InitialContext();
      return (Echo) c.lookup("EchoBean/remote"); // use myEarName/HelloWorldBean/remote in an ear