无法检测Persistence.xml

时间:2013-03-17 16:04:01

标签: java-ee persistence maven-3 jboss7.x war

我有3天时间寻找解决方案,但没有任何帮助, 我想部署一个MAVEN Web项目,这个Web项目包含一个EJB maven项目的依赖项(我使用MAVEN POM EDITOR来添加这个依赖项)..当我对两个项目进行MAVEN INSATALL时,每件事情都很好.. 但是当我尝试部署WEB maven项目时(我复制WAR,然后我将其粘贴到我的Jboss 7.0.2的stadlone deployement文件夹中) 我收到与

引起的Persistence.xml有关的错误
 Can't find a deployment unit named ModuleEjbPU at deployment "GestionReclamationWeb-1.0-SNAPSHOT.war

我试图将文件夹META-INF web.xml放在WEB内容src,lib中 我还试图删除EJB依赖并将jar(EJB项目)放入meta inf lib

我觉得在我的网络项目的战争中找不到persistence.xml

如果你想让我提供我喜欢的代码..我需要帮助..谢谢你

2 个答案:

答案 0 :(得分:2)

您应persistence.xmlWEB-INF/classes/META-INF/persistence.xml放在Where to put persistence.xml in web app?

提及的persistence.xml

通过使用Maven方式,src/main/resources/META-INF/persistence.xml应放在{{1}}

我希望这可能有所帮助。

答案 1 :(得分:0)

您的持久性单元配置为在资源本地模式下使用,但您需要将其配置为在容器中使用。为了使它工作:

  1. 在容器中配置数据源,请参阅this
  2. 更改持久性定义,如下所示:

    <?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="ModuleEjbPU" transaction-type="JTA">
            <jta-data-source>name</jta-data-source>
            <exclude-unlisted-classes>false</exclude-unlisted-classes>
            <!-- Indique a Hibernate de (re-)créer la BDD au lancement de l'application -->
            <property name="hibernate.hbm2ddl.auto" value="create" />
        </persistence-unit>
    </persistence>
    
  3. 我有<jta-data-source>name</jta-data-source>的地方,用1中提出的任何JNDI名称替换名称。

    Voila,假设其他问题不会出现。