2

JPA を使用して、JDBC:ODBC 接続を使用して MS アクセス DB に接続しようとしています。ここに私の Persistance.xml コードがあります:

<?xml version="1.0" encoding="UTF-8"?>
<persistence version="1.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_1_0.xsd">
    <persistence-unit name="DSRJPA">
    <provider>oracle.toplink.essentials.ejb.cmp3.EntityManagerFactoryProvider</provider>
    <class>com.entity.AccessEntity</class>
    <properties>
    <property name="toplink.jdbc.url" value="jdbc:odbc:MSAccessDB"/>
    <property name="toplink.jdbc.user" value="admin"/>
    <property name="toplink.jdbc.driver" value="sun.jdbc.odbc.JdbcOdbcDriver"/>
    <property name="toplink.jdbc.password" value="admin"/>
    <property name="toplink.jdbc.read-connections.min" value="1"/>   
    <property name="toplink.jdbc.write-connections.min" value="1"/> 
    </properties>
    </persistence-unit>
</persistence>

しかし、コードを実行すると、次のエラーが発生します。

Exception in thread "main" javax.persistence.PersistenceException: No Persistence provider for EntityManager named DSRJPA:  The following providers:
oracle.toplink.essentials.PersistenceProvider
oracle.toplink.essentials.ejb.cmp3.EntityManagerFactoryProvider
Returned null to createEntityManagerFactory.

    at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:154)
    at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:83)
    at com.test.Access.main(Access.java:19)

このエラーについて教えてください。前もって感謝します。

4

1 に答える 1

0

クラスで持続性ユニットを参照しましたか?

すなわち

EntityManagerFactory emf = Persistence.createEntityManagerFactory("DSRJPA");
于 2013-01-18T10:29:19.747 に答える