2012-06-18 16 views
15

このパーシスタンスファイルを正しく取得できません...ガイドとして使用している本で、これ以上の情報が見つかりません。私はMySQLデータベースを使用しています。Persistence.xmlが正しく設定されていません

<?xml version="1.0" encoding="UTF-8"?> 
    <persistence version="2.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_2_0.xsd"> 
     <persistence-unit name="a11_DA_g5_PU" transaction-type="JTA"> 
     <jta-data-source>a11_DA_g5</jta-data-source> 
     <provider>org.eclipse.persistence.jpa.PersistenceProvider</provider> 
     <class>entities.Book</class> 
     <class>entities.Author</class> 
     <class>entities.Customer</class> 
     <class>entities.Membership</class> 
     <properties> 
      <property name="eclipselink.target-database" value="DERBY"/> 
      <property name="javax.persistence.jdbc.driver" value="org.apache.derby.jdbc.ClientDriver"/> 
      <property name="javax.persistence.jdbc.url" value="jdbc:mysql://studev.groept.be:3306/a11_DA_g5"/> 
      <property name="javax.persistence.jdbc.user" value="a11_DA_g5"/> 
      <property name="javax.persistence.jdbc.password" value="passwordhere"/> 
      <property name="eclipselink.ddl-generation" value="create-tables"/> 
     </properties> 
     </persistence-unit> 
    </persistence> 

EDIT

SEVERE:DPL8015:無効なデプロイメント・ディスクリプタの展開記述子ファイルMETA-INF/persistence.xmlでアーカイブ内の[EJBModule_jar]。 行6列15 - cvc-complex-type.2.4.a: 'provider'要素で始まる無効な内容が見つかりました。 '{"http://java.sun.com/xml/ns/persistence":shared-cache-mode、" http://java.sun.com/xml/ns/persistence ":validation-mode、 "http://java.sun.com/xml/ns/persistence::properties}"が必要です。

SEVERE:DPL8005:デプロ​​イメントディスクリプタの解析に失敗しました:cvc-complex-type.2.4.a: 'provider'で始まる無効なコンテンツが見つかりました。 '{"http://java.sun.com/xml/ns/persistence":shared-cache-mode、" http://java.sun.com/xml/ns/persistence ":validation-mode、 "http://java.sun.com/xml/ns/persistence::properties}"が必要です。

SEVERE:例外[VaadinTestApp]

SEVEREアプリデプロイ中:org.xml.sax.SAXParseException:CVC-複素type.2.4.a:無効なコンテンツが要素 'プロバイダ' で始まるが見出されたが。 '{"http://java.sun.com/xml/ns/persistence":shared-cache-mode、" http://java.sun.com/xml/ns/persistence ":validation-mode、 "http://java.sun.com/xml/ns/persistence::properties}"が必要です。 java.io.IOException:org.xml.sax.SAXParseException:cvc-complex-type.2.4.a:要素 'provider'で始まる無効なコンテンツが見つかりました。 '{"http://java.sun.com/xml/ns/persistence":shared-cache-mode、" http://java.sun.com/xml/ns/persistence ":validation-mode、 "http://java.sun.com/xml/ns/persistence::properties}"が必要です。 <persistence-unit>内の要素の

+0

エラーメッセージには何が表示されますか?エラーメッセージは読み込まれることを意図しています。私はそれが "何かが間違っている"と言うだけではないと確信しています。 –

答えて

38

順序が重要である、<jta-data-source><provider>後に行く必要があります:the XSDが言うように

<provider>org.eclipse.persistence.jpa.PersistenceProvider</provider> 
<jta-data-source>a11_DA_g5</jta-data-source>   
+0

これは、物事を改善するようです。別のエラーが発生しました: 原因:com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException:SQL構文にエラーがあります。正しい構文については、MySQLサーバのバージョンに対応するマニュアルを参照してください。値1の近くの値IDENTITY_VAL_LOCAL()を使用してください。 – mmvie

+0

'eclipselink.target-database'は' DERBY'ですが、接続URLはMySQLを指しています。 – axtavt

+0

それも奇妙なものを見つけましたが、私はそれをMySQLに指摘する方法を見つけることができません。あなたは私に道を示すことができますか? – mmvie

6

は、<provider>要素が<jta-data-source>要素の前に来なければなりません。

+0

要素が順序どおりになるべきかどうかを決定する: 'xsd:sequence'(決定的な順序) ' xsd:all'(順序なし) – FiruzzZ

関連する問題