JBoss AS 6多个ejb jar在同一个战争中 - 如何配置?

时间:2012-01-09 22:33:22

标签: jboss jar ejb ejb-3.0 war

我正在试图弄清楚如何配置我的战争,以便它成功地在JBoss中部署我的所有EJB(EJB 3)。这些EJB可以在战争中的多个罐子中找到。

你能告诉我一个如何配置这个的例子吗?换句话说,我需要编辑的文件是什么,以便JBoss知道有多个包含EJB的jar。

谢谢!

2 个答案:

答案 0 :(得分:0)

您应该使用EAR存档来部署多模块应用程序(包含许多EJB)。 WAR文件和目录的JBoss部署者不要为任何EJB分析WEB-INF / lib目录,也不要部署它。只从该目录加载简单类。当然,您可以单独部署所有EJB。

对于EAR存档,您应该指定application.xml文件,并且可以使用部署信息指定jboss-app.xml。例如,

<application>
  <display-name>My Application</display-name>

  <module>
     <web>
        <web-uri>web-app.war</web-uri>
        <context-root>/myapp</context-root>
     </web>
  </module>

  <module>
     <ejb>ejb-app.jar</ejb>
  </module>
</application>

这是JBoss 4服务器配置指南的link。我没有在AS 6的文档中找到相同的内容。但是主要的部署者概念可能是相同的。

答案 1 :(得分:0)

您无需执行任何特殊操作即可在战争文件中部署EJB。只要您的POJO使用@Stateless / @Stateful注释,就应该没问题。您显然需要将EJB jar文件放在WEB-INF/lib中,这应该足够了。

您是否看到任何特定错误或遇到问题?如果是这样,你使用的是什么JBoss版本?如果您使用此信息更新您的问题,我可以相应地更新我的答案。