【问题标题】:OpenEJB: can't specify global JNDI nameOpenEJB:无法指定全局 JNDI 名称
【发布时间】:2015-08-11 14:12:51
【问题描述】:

我的应用在 Tomee 1.7.2 上运行。 (我们称之为 myApp

openejb-jar.xml

<openejb-jar>
  <properties>
     openejb.deploymentId.format = myApp/{ejbName}
     openejb.jndiname.format = {deploymentId}{interfaceType.annotationName}
  </properties>
</openejb-jar>

MyApp 包含 MyEJB ejb。

当我开始时,这里是 catalina.out 日志:

INFO: ------------------------- myApp -> /
INFO: Auto-deploying ejb MyEJB: EjbDeployment(deployment-id=myApp/MyEJB)
INFO: Jndi(name=myApp/MyEJBLocalBean) --> Ejb(deployment-id=myApp/MyEJB)
INFO: Jndi(name=global/MyEJB!dao.MyEJB) --> Ejb(deployment-id=myApp/MyEJB)
INFO: Jndi(name=global/MyEJB) --> Ejb(deployment-id=myApp/MyEJB)
INFO: Created Ejb(deployment-id=app1/MyEJB, ejb-name=MyEJB, container=Default Stateless Container)

如您所见,一个 MyEJB 有 3 个 Jndi 名称:

  • myApp/MyEJBLocalBean
  • global/MyEJB!dao.MyEJB
  • 全局/MyEJB

我的问题是:

我可以指定 global/MyEJB!dao.MyEJBglobal/MyEJB 的名称吗??

例如: global/MyEJB -> global/myApp/MyEJB

假设您有 2 个应用程序,每个应用程序都有 MyEJB ejb,两者都具有全局/MyEJB JNDI 名称:(

谢谢

【问题讨论】:

    标签: java jndi apache-tomee openejb


    【解决方案1】:

    想象一下,您有 2 个应用程序,每个应用程序都有 MyEJB ejb,两者都有 全局/MyEJB JNDI 名称 :(

    这应该可以解决问题 - {moduleId}

    openejb.deploymentId.format = {moduleId}/{ejbName}
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-04-09
      • 1970-01-01
      • 2018-03-02
      • 1970-01-01
      • 2019-12-17
      • 1970-01-01
      相关资源
      最近更新 更多