【问题标题】:how can use @EJB with remote interface"如何将@EJB 与远程接口一起使用”
【发布时间】:2015-01-19 07:46:53
【问题描述】:

我有 glassfish v4 和 2 个耳朵:

  1. Service.ear 包含 EJB。
  2. WebApplications.ear 包含 Web 应用程序。

我尝试使用:

@EJB(mappedName="java:global/Service/allServices/ServiceEJBs!Service1Remote")
Service1Remote service1Remot;

但我得到了错误:

原因:com.sun.faces.spi.InjectionProviderException: com.sun.enterprise.container.common.spi.util.InjectionException: 尝试注入远程 ejb-ref name=java:global/Service/allServices/ 的异常ServiceEJBs!Service1Remote,Remote 3.x 接口 =Service1Remote,ejb-link=null,lookup=,mappedName=global/Service/allServices/ServiceEJBs!Service1Remote,jndi-name=,refType=Session 到类 com.manage.application.WebApplication : 空

但是当我使用 :

Service1Remote remote= (Service1Remote) new InitialContext().lookup("java:global/Service/allServices/ServiceEJBs!Service1Remote"); 

效果很好。

EJB:

@Remote
public interface Service1Remote{
   public long getCount(int itemId);
}

@Stateless(name = "ServiceEJBs" , mappedName ="ServiceEJBs")
public Service1Bean implements Service1Remote{
   public long getCount(int itemId){
     ...............
     return 100000999; 
   }

}

【问题讨论】:

    标签: java jakarta-ee ejb-3.0


    【解决方案1】:

    很明显,@EJB(mappedname) 的定义与 @Stateless(mappedNamed) 定义中的映射名称不同。

    也就是说,如果您替换了正确的映射名称,它甚至不会起作用(因为它们在两个不同的耳朵部署中)。

    要真正获得参考,请使用

    @EJB(lookup="java:global/Service/allServices/ServiceEJBs!Service1Remote")
    

    代替

    @EJB(mappedName="java:global/Service/allServices/ServiceEJBs!Service1Remote")
    

    【讨论】:

      【解决方案2】:

      我重新安装了 glassfish 4.1 和 JDK1.8.0_25 的最新版本,并且正如 Maress 所说的改变了:

      @EJB(lookup="java:global/Service/allServices/ServiceEJBs!Service1Remote")
      

      代替

      @EJB(mappedName="java:global/Service/allServices/ServiceEJBs!Service1Remote")
      

      现在它工作正常。

      谢谢Maress :)

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-04-17
        • 1970-01-01
        • 2012-02-23
        • 1970-01-01
        • 2012-07-28
        • 1970-01-01
        相关资源
        最近更新 更多