【问题标题】:No persistence providers available for "transactions-optional"没有可用于“事务可选”的持久性提供程序
【发布时间】:2012-11-20 00:47:30
【问题描述】:

我的 AppEngine 项目中出现此错误:

javax.persistence.PersistenceException: No persistence providers available for "transactions-optional" after trying the following discovered implementations: org.datanucleus.api.jpa.PersistenceProviderImpl
    at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:180)
    at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:70)

jdoconfig.xml

<jdoconfig xmlns="http://java.sun.com/xml/ns/jdo/jdoconfig"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/jdo/jdoconfig http://java.sun.com/xml/ns/jdo/jdoconfig_3_0.xsd">

    <persistence-manager-factory name="transactions-optional">
        <property name="javax.jdo.PersistenceManagerFactoryClass"
            value="org.datanucleus.api.jdo.PersistenceManagerFactoryClass"/>
        <property name="javax.jdo.option.ConnectionURL" value="appengine"/>
        <property name="javax.jdo.option.NontransactionalRead" value="true"/>
        <property name="javax.jdo.option.NontransactionalWrite" value="true"/>
        <property name="javax.jdo.option.RetainValues" value="true"/>
        <property name="datanucleus.appengine.autoCreateDatastoreTxns" value="true"/>
        <property name="datanucleus.appengine.singletonPMFForName" value="true"/>
    </persistence-manager-factory>
</jdoconfig>

这真的很奇怪,因为在我的 jdoconfig.xml 中有这个“事务可选”

【问题讨论】:

    标签: google-app-engine jpa jdo datanucleus


    【解决方案1】:

    显然 JPA(用于获取 EMF)不使用“jdoconfig.xml”(由 JDO 使用)。 JPA 使用“persistence.xml”。建议您在继续之前确定您正在使用的 API

    【讨论】:

    猜你喜欢
    • 2013-03-02
    • 2018-04-03
    • 1970-01-01
    • 2013-06-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多