gpt4 book ai didi

java - 部署 WildFly 期间的持久性单元名称问题

转载 作者:太空宇宙 更新时间:2023-11-04 12:55:10 24 4
gpt4 key购买 nike

我的持久性模块遇到一些问题。

出现错误,例如“收集统计信息时出现意外问题:java.lang.IllegalStateException:JBAS011477:持久性单元'EAR_FileName.ear/EJB_Module_Persistence.jar#MyPersistenceUnit'不可用”

我的 persistence.xml 文件位于下面突出显示的位置。如果我错了,请纠正我 - 根据包装结构持久性单元名称以 EAR 文件名开头,然后是我的持久性模块名称,然后是 #unit name,这是绝对正确的。我正在使用 PersistenceContext 将我的持久单元注入(inject)到另一个 ejb 中。

@PersistenceContext(unitName="MyPersistenceUnit")
private EntityManager em;

有人可以告诉我我在这里做错了什么吗?如果您能就此提供任何意见/帮助,我将不胜感激。

这是我的项目的以下模块结构

EAR_FileName.ear
|
|---EJB_Module1.jar
|
|---EJB_Module_Persistence.jar
|
|---META-INF
|
|---persistence.xml

这是我的 persistence.xml 文件

<?xml version="1.0" encoding="UTF-8"?>
<persistence version="2.0"
xmlns="http://java.sun.com/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="
http://java.sun.com/xml/ns/persistence
http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd">
<persistence-unit name="MyPersistenceUnit" transaction-type="JTA">
<provider>org.hibernate.ejb.HibernatePersistence</provider>
<jta-data-source>java:/MyTransactionDS</jta-data-source>
<class>all class</class>
<properties>
<property name="hibernate.show_sql" value="false"/>
<property name="hibernate.format_sql" value="true"/>
<property name="hibernate.use_sql_comments" value="true"/>
<property name="hibernate.cache.use_second_level_cache" value="true"/>
</properties>
</persistence-unit>
</persistence>

附注使用WildFly 8.1作为应用程序服务器。

提前致谢。

最佳答案

看起来 Wildfly-Tracker 已经存在针对此问题的缺陷:

WFLY-4908: Redeploy dependent ear fails with duplicate resource error for persistence unit

Jboss 论坛上也有一个帖子:

JBoss-Dev: Redeploy dependent ear fails with duplicate resource error for persistence unit

根据缺陷描述,该问题已在 Wildfly 10.1.0.CR1 中修复。

关于java - 部署 WildFly 期间的持久性单元名称问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35467835/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com