Новая XSD-схема в Hibernate 4 - PullRequest
       36

Новая XSD-схема в Hibernate 4

6 голосов
/ 21 декабря 2011

В Hibernate 4 я нашел (новую для меня) возможность использовать схему XSD вместо DTD.

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

Но расположение схемы недопустимо, и во время инициализации у меня возникла ошибка.

Кто-нибудь знает, что не так с XSD в Hibernate 4?

Ответы [ 2 ]

7 голосов
/ 11 сентября 2013
<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"/>

Попробуйте, это должно работать лучше.

2 голосов
/ 14 марта 2012

Схема местоположения - это просто идентификатор места, и это место можно привязать к любому месту: интернету, локальному драйве. В частности, эта схема (вместе с hibernate-configuration-4.0.xsd) размещена внутри jar-файла hibernate-core в пакете org.hibernate. Поскольку обычно schemaLocation и фактическое местоположение совпадают, IDE будет пытаться извлечь его из того места, куда он указывает, но это не наш случай. Вы можете сконфигурировать свою IDE, чтобы найти эту схему в этом фляге, чтобы вы могли использовать автозаполнение. Если мы говорим об IntelliJ, перейдите к настройкам и настройте свои схемы и DTD для включения требуемой схемы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...