2012-06-18 58 views
15

Bu kalıcılık dosyasını doğru bulamıyorum ... Kılavuzda kullandığım kitapta daha fazla bilgi bulamıyorum. Bir MySQL veritabanı kullanıyorum.Persistence.xml doğru şekilde yapılandırılmamış

<?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> 

DÜZENLEME

CİDDİ: DPL8015: [EJBModule_jar] arşivdeki Dağıtım tanımlayıcı dosyası META-INF/persistence.xml geçersiz Dağıtım Tanıtıcılar. Satır 6 Sütun 15 - cvc-complex-type.2.4.a: 'Sağlayıcı' öğesiyle başlayan geçersiz içerik bulundu. "{" Http://java.sun.com/xml/ns/persistence":shared-cache-mode adresinden biri, "http://java.sun.com/xml/ns/persistence":validation-mode, "http://java.sun.com/xml/ns/persistence":properties}" bekleniyor.

DİKKAT: DPL8005: Dağıtım Tanımlayıcısı ayrıştırma hatası: cvc-complex-type.2.4.a: 'Sağlayıcı' öğesiyle başlayan geçersiz içerik bulundu. "{" Http://java.sun.com/xml/ns/persistence":shared-cache-mode adresinden biri, "http://java.sun.com/xml/ns/persistence":validation-mode, "http://java.sun.com/xml/ns/persistence":properties}" bekleniyor.

AĞIR: durum uygulamayı [VaadinTestApp]

AĞIR dağıtımı sırasında: eşleşmelidir.org.XML.sax.SAXParseException: CVC-kompleks type.2.4.a: Geçersiz içerik öğesi 'sağlayıcısı' ile başlayan bulunmuştur. "{" Http://java.sun.com/xml/ns/persistence":shared-cache-mode adresinden biri, "http://java.sun.com/xml/ns/persistence":validation-mode, "http://java.sun.com/xml/ns/persistence":properties}" bekleniyor. java.io.IOException: org.xml.sax.SAXParseException: cvc-complex-type.2.4.a: 'Provider' öğesiyle başlayan geçersiz içerik bulundu. "{" Http://java.sun.com/xml/ns/persistence":shared-cache-mode adresinden biri, "http://java.sun.com/xml/ns/persistence":validation-mode, "http://java.sun.com/xml/ns/persistence":properties}" bekleniyor. <persistence-unit> içindeki elementlerin

+0

Ve hata iletisi ne diyor? Hata mesajlarının okunması amaçlanmıştır. Eminim sadece "bir şeyler yanlış" demez. –

cevap

38

Sipariş önemlidir <jta-data-source><provider> sonra gitmeli: the XSD söylediği gibi

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

Tamam, bu şeyler geliştirmek için görünüyor. Şimdi başka bir hata alma: Nedeniyle: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: SQL sözdiziminde bir hata var; Doğru sözdiziminin MySQL sunucu sürümünüze karşılık gelen elkitabını kontrol edin. 1 – mmvie

+0

numaralı satırdaki 'values ​​IDENTITY_VAL_LOCAL()' yakınında kullanmak için 'eclipselink.target-database' '' DERBY' olduğunu unutmayın, ancak bağlantı URL'si MySQL'e işaret eder. – axtavt

+0

Bu garip şeyi de bulmak ama onu MySQL'e nasıl yönlendireceğimi bulamıyorum. Bana yolu gösterebilir misin? – mmvie

6

, <provider> eleman <jta-data-source> öğesinden önce gelmelidir.

+0

Öğelerin sırasına göre sıralanıp oluşturulmayacağı belirlenir: 'xsd: sequence' (satırı belirle) ' xsd: all' (sipariş yok) – FiruzzZ