gpt4 book ai didi

java - Tomee jpa 设置

转载 作者:行者123 更新时间:2023-12-02 04:27:45 28 4
gpt4 key购买 nike

无法部署应用程序,但出现异常 java.lang.Exception:持久性单元:持久性 -750441533localhost:未找到名称“openejb/PersistenceUnit/persistence -750441533localhost”。尝试了很多配置。有什么设置建议吗?

持久性.xml

  <persistence xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://xmlns.jcp.org/xml/ns/persistence"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/persistence
http://xmlns.jcp.org/xml/ns/persistence/persistence_2_1.xsd"
version="2.1">
<persistence-unit name="persistence">
<description>Hibernate JPA</description>
<provider>org.hibernate.jpa.HibernatePersistenceProvider</provider>
<non-jta-data-source>jdbc/postgres</non-jta-data-source>
<exclude-unlisted-classes>false</exclude-unlisted-classes>
<properties>
</properties>
</persistence-unit>
</persistence>

上下文.xml

   <Context antiJARLocking="true" path="/postgres">
<Resource name="jdbc/postgres"
auth="Container"
type="javax.sql.DataSource"
username="root"
password="root"
driverClassName="org.postgresql.Driver"
url="jdbc:postgresql://localhost:5432/base"
maxTotal="20"
maxActive="25"
maxIdle="3"/>
</Context>

错误

org.apache.catalina.LifecycleException: An invalid Lifecycle transition was attempted ([before_destroy]) for component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[]] in state [STARTING_PREP]
14-Jun-2019 17:21:36.774 SEVERE [http-nio-8080-exec-4]
org.apache.openejb.assembler.classic.Assembler.destroyApplication
undeployException original cause
java.lang.Exception: deployment not found: .Comp1964794492

14-Jun-2019 17:21:36.777 SEVERE [http-nio-8080-exec-4]
org.apache.openejb.assembler.classic.Assembler.destroyApplication
undeployException original cause
java.lang.Exception: persistence-unit: persistence
-750441533localhost: Name "openejb/PersistenceUnit/persistence
-750441533localhost" not found.

org.apache.openejb.OpenEJBRuntimeException: javax.persistence.PersistenceException: [PersistenceUnit: persistence] Unable to build Hibernate SessionFactory: javax.persistence.PersistenceException: [PersistenceUnit: persistence] Unable to build Hibernate SessionFactory

最佳答案

我找到了解决方案。 tomee 的 Jta 配置:

主/资源/META-INF/persistence.xml

<persistence xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://xmlns.jcp.org/xml/ns/persistence"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/persistence
http://xmlns.jcp.org/xml/ns/persistence/persistence_2_1.xsd"
version="2.1">
<persistence-unit name="persistence" transaction-type="JTA">
<description>persistence</description>
<provider>org.eclipse.persistence.jpa.PersistenceProvider</provider>
<jta-data-source>MyDataSource</jta-data-source>
<exclude-unlisted-classes>false</exclude-unlisted-classes>
<properties>
<property name="javax.persistence.schema-generation.database.action" value="drop-and-create" />
</properties>
</persistence-unit>

tomee\conf\tomee.xml

<?xml version="1.0" encoding="UTF-8"?>
<tomee>
<!-- see http://tomee.apache.org/containers-and-resources.html -->

<!-- activate next line to be able to deploy applications in apps -->
<!-- <Deployments dir="apps" /> -->
<Resource id="MyDataSource" type="javax.sql.DataSource">
JdbcDriver org.postgresql.Driver
JdbcUrl jdbc:postgresql://localhost:5432/dbname
UserName un
Password pass
JtaManaged true
DefaultAutoCommit true
</Resource>
</tomee>

Eclipselink 行家:

https://mvnrepository.com/artifact/org.eclipse.persistence/org.eclipse.persistence.jpa

忘记将jdbc驱动.jar放入tomee\lib中。

另请注意,eclipselink 仅适用于 tomee pocket。

关于java - Tomee jpa 设置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56600965/

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