Hibernate.cfg.xml解析错误

Hibernate.cfg.xml解析错误,hibernate,hibernate.cfg.xml,Hibernate,Hibernate.cfg.xml,您的DOCTYPE定义引用了hibernate.sourceforge.net上的DTD。既然DTD已经存在(我可以通过Firefox浏览),但您的应用程序无法访问它。doctype元素的用途是链接到DTD 试试下面的用法 log4j:WARN No appenders could be found for logger (org.hibernate.cfg.Environment). log4j:WARN Please initialize the log4j system properly.

您的
DOCTYPE
定义引用了
hibernate.sourceforge.net
上的
DTD
。既然DTD已经存在(我可以通过Firefox浏览),但您的应用程序无法访问它。doctype元素的用途是链接到DTD

试试下面的用法

log4j:WARN No appenders could be found for logger (org.hibernate.cfg.Environment).
log4j:WARN Please initialize the log4j system properly.
Exception in thread "main" org.hibernate.HibernateException: Could not parse configuration: hibernate.cfg.xml
    at org.hibernate.cfg.Configuration.doConfigure(Configuration.java:1491)
    at org.hibernate.cfg.Configuration.configure(Configuration.java:1425)
    at StoreData.main(StoreData.java:12)
Caused by: org.dom4j.DocumentException: unknown protocol: classpath Nested exception: unknown protocol: classpath
    at org.dom4j.io.SAXReader.read(SAXReader.java:484)
    at org.hibernate.cfg.Configuration.doConfigure(Configuration.java:1481)
    ... 2 more

以下是您在hibernate.cfg.xml文件中的完整DTD

<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"classpath://org/hibernate/hibernate-mapping-3.0.dtd">

另外,不要忘记在文件开头的以下内容

<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD 3.0//EN" 
"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">


我也试过这个。这意味着它将引用本地文件中的DTD。但是DTD只存在于我工作区的hibernate3.jar中。我如何指向jar中的DTD?@naveenbharadwaj哪个版本的Hibernate我不确定。我从一个网站下载了JAR。这些是我工作区中的一组罐子。antlr-2.7.6.jar asm-attrs.jar asm.jar c3p0-0.9.1.jar cglib-2.1.3.jar commons-collections-2.1.jar commons-logging-1.0.4.jar dom4j-1.6.1.jar ehcache-1.2.3.jar ejb3.jar ejb3-persistence.jar hibernate-annotations.jar hibernate-annotations.jar hibernate-validator.jar hibernate.jar jdbc.jar jdbc2_0-stdextt.jar jta.jar jta.jar jta.jar dbc14xerces-2.6.2.jarI将DTD提取到一个路径,并在类路径中引用它。现在它给出了这个错误。原因:org.dom4j.DocumentException:未知协议:类路径嵌套异常:未知协议:org.dom4j.io.SAXReader.read(SAXReader.java:484)org.hibernate.cfg.Configuration.doConfigure(Configuration.java:1481)处的类路径。。。2另外,您的库是否存在于应用程序类路径中?我已在WEB-INF/lib文件夹中添加了JAR。除此之外,我还在java构建路径中添加了它们。请查看我的答案。您能发布hibernate.cfg.xml的完整内容吗?属性已从上面的注释中删除。请尝试从上面的字符串中删除以下截断的url“”
<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD 3.0//EN" 
"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<?xml version='1.0' encoding='utf-8'?>