这个问题与Hibernate根本无关,而与XML结构有关。
Hibernate将SAX
Reader设置为使用验证(org.hibernate.util.XMLHelper#createSAXReader(String,List,EntityResolver)
它变得更像这样:
SAXParserFactory factory = SAXParserFactory.newInstance(); factory.setValidating(true); factory.setNamespaceAware(true);
Java Dosc说
方法setValidating(boolean)-进行DTD验证,如果不存在DTD,则导致失败。如果只希望模式验证而不是DTD验证,请使用setValidating(false)。
您的错误说清楚了:
Caused by: org.xml.sax.SAXParseException: document is invalid: no grammarfound.
在本教程中,您将找到有关hibernateconf文件的所有必需信息。
要修复它,您将需要添加:
<!DOCTYPE hibernate-configuration PUBLIC"-//Hibernate/Hibernate Configuration DTD 3.0//EN""http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)