【问题标题】:@Local annotation in EJB 3EJB 3 中的 @Local 注释
【发布时间】:2010-05-19 11:05:48
【问题描述】:

我有一个无状态会话 bean 和一个作为客户端的独立 java 程序。当接口被标记为@Remote 时,bean 方法执行得很好。但是,当我使用 @Local 而不是 @Remote 标记该接口时,我得到以下异常。

 [java] javax.naming.NamingException: Could not dereference object [Root exception is java.lang.RuntimeException: Could not find InvokerLocator URL at JNDIaddress "chapter1/HelloUserBean/local"; looking up local Proxy from Remote JVM?]

但我什至希望后者也能工作,因为它是执行代码的同一台计算机。

看到这种行为,我假设 Application-Server 和 Standalone-Java-Program 使用不同的 JVM 实例而不是单个 JVM 实例,因此该客户端只能通过远程接口访问。

这个假设正确吗?

谢谢!

【问题讨论】:

    标签: java ejb-3.0


    【解决方案1】:

    是的,没错。

    @Local 接口只能在同一个应用服务器中使用。应用服务器启动一个 JVM 实例,而您的独立客户端启动另一个。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-05-07
      • 1970-01-01
      • 1970-01-01
      • 2010-10-25
      • 1970-01-01
      • 1970-01-01
      • 2012-03-22
      • 1970-01-01
      相关资源
      最近更新 更多