0

eclipselinkをGWTのrequestfactoryで動作させようとしています。次のエラーが発生し続けます。

Caused by: java.lang.RuntimeException: Server Error: No Persistence provider for EntityManager named default 

Webを読んでみると、persistence.xmlはWEB-INF / classes /META-INF/に存在する必要があるようです。src / META-INFの下にフォルダーを作成し、その中にpersistence.xmlを配置しようとしましたが、Eclipseでプロジェクトをビルドすると、war / WEB-INF /classes/に含まれません。助言がありますか?私はGWT2.3、EclipseLink 2.3、およびeclipse3.7を使用しています。eclipseにpersistence.xmlを正しい場所に含めるにはどうすればよいですか?

persistence.xml

<?xml version="1.0" encoding="UTF-8" ?> <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"
version="2.0" xmlns="http://java.sun.com/xml/ns/persistence">

<persistence-unit name="default" transaction-type="RESOURCE_LOCAL">
<provider>org.eclipse.persistence.jpa.PersistenceProvider</provider>

    <class>com.manning.gwtia.ch08.v2.server.Contact</class> 

    <properties>
        <property name="javax.persistence.jdbc.driver" value="org.postgresql.Driver" />
        <property name="javax.persistence.jdbc.url" value="jdbc:postgresql://localhost:5432/example" />
        <property name="javax.persistence.jdbc.user" value="" />
        <property name="javax.persistence.jdbc.password" value="" />

        <!-- EclipseLink should create the database schema automatically -->
        <property name="eclipselink.ddl-generation" value="create-tables" />
        <property name="eclipselink.ddl-generation.output-mode" value="database" />
    </properties>

</persistence-unit>

4

1 に答える 1

2

フォルダーにpersistence.xmlを配置してみましたwar/META-INFか?

編集:その他のオプション:persistence.xmlがsrc / META-INFフォルダーからclassesフォルダーにコピーされなかった理由は、eclipsejavaビルドパス構成にclassesフォルダーにコピーされる特定のタイプのファイルのみが含まれているためである可能性があります。プロジェクトのプロパティ->Javaビルドパス->ソースを確認し、含まれている/除外されているものを確認します。これは説明するかもしれません。

于 2012-04-21T09:45:19.117 に答える