在Wildfly中与多个wars共享ejb jar文件



我知道这是一个非常简单的问题,但由于我是Wildfly的新手,我还没有成功地尝试实现它。

在JBoss 4.2的旧版本中,当我想与多个war文件共享一个ejb jar文件时,我只是将ejb jar文件部署到应用程序服务器上,并在我的war项目中使用放在war文件的某个源目录中的文件"jndi.properties"配置jndi,如下所示:

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

现在,对于Wildfly 8.1,这种方法已经不起作用了。我不知道jndi属性文件的内容是否发生了更改,或者我是否必须做其他事情。因此,我想问:如何在Wildfly 8.1中与多个wars共享ejb jar文件(我不想为此使用ear文件)?

提前谢谢。

Marcos

PS.:交叉张贴:https://developer.jboss.org/thread/249133

只需部署jar文件并将dependency添加到您的war文件中(在Manifest.MF或jboss-deployment-structure.xml中,从您的war到您的jar。然后,您应该能够使用java:global/…或使用CDI使用@Inject注入bean来进行JNDI查找(对于这种方法,您需要使用beans.xml激活CDI)

另请参阅:

  • Wildfly类加载
  • Wildfly部署描述符
  • CDI参考
  • 应用程序部署

最新更新