当前位置: 首页 > 知识库问答 >
问题:

在部署javaee-angularjs.war中找不到名为'siscorp'的持久性单元

於和志
2023-03-14

这是我的坚持课:

package br.com.rafaelvicio.siscorp.util;

import javax.enterprise.context.ApplicationScoped;
import javax.enterprise.inject.Produces;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;

@ApplicationScoped
public class Persistence {

      @PersistenceContext(unitName="siscorp")
      private EntityManager entityManager;

      @Produces
      public EntityManager getEntityManager() {
          return entityManager;
      }

}

这是我的persistence.xml:

<?xml version="1.0" encoding="UTF-8"?>
<persistence version="2.1"
    xmlns="http://xmlns.jcp.org/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/persistence http://xmlns.jcp.org/xml/ns/persistence/persistence_2_1.xsd">

    <persistence-unit name="siscorp">

        <!-- provedor/implementacao do JPA -->
        <provider>org.hibernate.jpa.HibernatePersistenceProvider</provider>

        <!-- entidade mapeada -->
        <class>br.com.rafaelvicio.siscorp.model.CEP</class>

        <properties>
            <!-- dados da conexao -->
            <property name="javax.persistence.jdbc.driver" value="com.mysql.jdbc.Driver" />
            <property name="javax.persistence.jdbc.url" value="jdbc:mysql://localhost/siscorp" />
            <property name="javax.persistence.jdbc.user" value="root" />
            <property name="javax.persistence.jdbc.password" value="admin123" />

            <!-- propriedades do hibernate -->
            <property name="hibernate.dialect" value="org.hibernate.dialect.MySQL5InnoDBDialect" />
            <property name="hibernate.show_sql" value="true" />
            <property name="hibernate.format_sql" value="true" />

            <!-- atualiza o banco, gera as tabelas se for preciso -->
            <property name="hibernate.hbm2ddl.auto" value="update" />

        </properties>
    </persistence-unit>
</persistence>

共有1个答案

徐子石
2023-03-14

您之所以会出现此错误,是因为persistence.xml文件没有内置到WAR文件中。

这是因为您已经将它放在src/main/java目录中,并且它是一个Maven项目。

除非您故意对其进行其他配置(不推荐),Maven只处理src/main/java中的.java源文件,而不处理其他文件。

 类似资料:
  • 我试图使用EJB 3.1、JPA 2.0、M2E-WTP和JSF 2.1技术在WebLogic12c服务器上运行我的webapp,但仍然出现以下错误: 这是触发异常的EJBBean 下面是persistence.xml文件,它位于eclipse构建的src/main/java-->META-INF下。 我花了几个小时在网上寻找答案,但没有结果。我不明白为什么我的persistence.xml中的持

  • 问题内容: 我收到以下错误: 这是我的persistence.xml文件: 这是我的persistenceLayer.xml: persistence.xml位于src / META-INF中,该文件位于构建路径中,因此应正确找到它。谁有想法? 问题答案: 好吧,我通常将persistence.xml放在资源文件夹/src/main/resouces/META- INF/persistence.x

  • 我试图建立一个gradle任务,运行一个旨在生成SQL模式的java主类。 我没有毅力。xml配置文件。 以下是我的配置和代码: 我的gradle任务: 我的导出实用程序: 我的数据配置: 以下是我得到的一个例外: 编辑:我确实收到了警告:

  • 问题内容: 将persistence.xml放在eclipse中的项目的类路径中,因为在错误之前是找不到该文件。现在给出此错误: 原因:javax.persistence.PersistenceException:无效的persistence.xml。解析XML时出错[行:-1,列:-1]:cvc- elt.1:找不到元素’persistence’的声明 问题答案: 解决了! 我不知道到底出了什么

  • 我正在使用WildFly8.1和一个包含实体的EJB项目(EJB3.2)。当尝试将实体管理器注入到我的一个bean中时,我得到了以下信息: 这是我尝试注入EntityManager的SessionBean: 我指定了以下文件,并将其放入“project-name”/ejbmodule/meta-inf。 类似问题及其解决方法 找不到持久性单元建议包含persistence.xml 在Wildfly

  • 我目前正在开发一个企业应用程序,我在设置实体管理器工厂时遇到了问题。我一直收到这条信息。 我已经在上面好几天了!请帮助!!!这是我的persitence.xml