我们的项目有多个EJB模块,我们希望persistence.xml在它们之间共享一个文件.
我们将persistence.xml文件放在EARs META-INF目录中,但持久性单元在运行时不可用.似乎文件永远不会被读取,因为我们强制使用不正确的类和jar文件,但没有任何反应.
为什么WebLogic不读取persistence.xmlEAR中的文件?
运行代码时出现以下错误,未找到PU(可用持久性单位:[]).
Caused By: java.lang.IllegalArgumentException: No persistence unit named 'em' is available in scope ejb1-module.jar. Available persistence units: []
Run Code Online (Sandbox Code Playgroud)
persistence.xml中
<?xml version="1.0" encoding="UTF-8"?>
<persistence version="1.0" xmlns="http://java.sun.com/xml/ns/persistence">
<persistence-unit name="system-unit" transaction-type="JTA">
<jta-data-source>sysmtem-ds</jta-data-source>
<jar-file>../ejb1-module.jar</jar-file>
<class>...</class>
<class>...</class>
<class>...</class>
</persistence-unit>
</persistence>
Run Code Online (Sandbox Code Playgroud)
结构(持久性单元放在EAR内)
EAR +
|- META-INF +
| - persistence.xml
|- ejb1-module.jar
|- ejb2-module.jar
|- ejb3-module.jar
Run Code Online (Sandbox Code Playgroud)
我们正在使用WebLogic 10.3.6,它使用JPA 1.0和TopLink/EclipseLink.
| 归档时间: |
|
| 查看次数: |
2176 次 |
| 最近记录: |