【发布时间】:2012-10-03 13:28:28
【问题描述】:
可能重复:
Sharing a persistence unit across components in a .ear file
我有一个包含 JPA 实体和 persistence.xml 文件的项目。我将它们打包成 jar 文件并部署到应用服务器(JBoss 7.1)。
我有另一个项目,一个 web 应用程序,它有一个会话 bean,我想在那里使用这个持久性单元(通过注入)。
但是我得到了一个例外:
Caused by: org.jboss.as.server.deployment.DeploymentUnitProcessingException: JBAS011047: Component class com.mypackage.MyService for component MyService has errors:
JBAS011440: Can't find a persistence unit named my_pu in deployment "mywebapp.war"
我尝试将 PU 的 jar 作为依赖添加到战争的 manifest.mf 中,但没有任何成功。
你知道如何实现吗?
【问题讨论】:
-
这些是单独部署的人工制品,还是 JAR 是一个库?
-
我想单独部署它们。
-
他们应该是独立的。想象一下在同一个应用服务器上部署一个 WAR 文件,并且不小心使用了别人的 PU。 :(
-
其实这是最终目标:在多个 Web 应用程序之间共享 PU。那我必须建立一个EAR吗?
标签: java jpa deployment jboss java-ee-6