2011-12-20 25 views
5

Hazırda bekletme 4'te (yeni benim için) DTD yerine XSD şemasını kullanma olanağı buldum.Hazırda Hazırda Yeni XSD şeması 4

<hibernate-mapping xmlns="http://www.hibernate.org/xsd/hibernate-mapping"     
    xsi:schemaLocation="http://www.hibernate.org/xsd/hibernate-mapping hibernate-mapping-4.0.xsd" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> 

Ancak şema konumu geçersiz ve başlatma sırasında hatam var.

Hibernate 4'teki XSD ile neyin yanlış olduğunu kimse bilen var mı?

+0

İsterseniz, işte Hazırda bekletme yapılandırma dosyaları için XML Şema Tanımı dosyasının bir (şu andaki) konumu: ** http: //hibernate.org/xsd/hibernate-configuration/hibernate-configuration-4.0 .xsd ** 'xsi: schemaLocation' özniteliğinde kullanabilirsiniz. Aşağıdaki sayfada Hazırda Bekletme için XSD dosyalarına bağlantılar bulunmaktadır (şu anda sadece burada XYD vardır): http://hibernate.org/xsd/hibernate-configuration/. – informatik01

cevap

2

Şema konumu, yalnızca bir yer tanımlayıcıdır ve bu yer her yere bağlı olabilir: internet, yerel sürücü. Özellikle bu şema (hibernate-configuration-4.0.xsd ile birlikte) org.hibernate paketindeki hazırda-ortadaki kavanoza yerleştirilir. Genellikle şema Konumu ve gerçek konum aynı olduğundan, IDE onu gösterdiği yerden getirmeye çalışacaktır, ancak bu bizim durumumuz değildir. IDE'nizi bu şemada bu dizide bulmak için yapılandırabilirsiniz, böylece otomatik tamamlama kullanabilirsiniz. IntelliJ hakkında konuşuyorsak, ayarlara gidiniz ve Şemalarınızı ve DTD'lerinizi gerekli şemayı içerecek şekilde yapılandırabilirsiniz.

+0

Teşekkürler, ancak şu anda xsd şemasının kullanımını tetikleyen birçok sorun var. Hibernate Dev Team, bir sonraki büyük sürüm 5.0.0 ile bunların bir kısmını düzeltir, bu nedenle bu xsd'ye geçiş yapmak mümkün değildir. – smg

6
<hibernate-mapping xmlns="http://www.hibernate.org/xsd/hibernate-mapping" 
xsi:schemaLocation="http://www.hibernate.org/xsd/hibernate-mapping classpath://org/hibernate/hibernate-mapping-4.0.xsd" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" package="acme.foo.bar"/> 

bu deneyin, daha iyi çalışması gerekir.

+0

Bu, herkes için çalışır mı? Denedim ve işe yaramadı ... –

+0

Bunu yapmak için IntelliJ içinde çalışın: //org/hibernate/hibernate-mapping-4.0.xsd – zhy2002