3

我今天在我的公司创建了一个小项目。在 Hibernate Perspective 中,我尝试添加新配置,以便可以从具有多个列的 db 表轻松创建实体。但是当我选择我的项目时,它给了我org.hibernate.HibernateException: Could not parse configuration: /hibernate.cfg.xml

完整的堆栈跟踪 -

org.hibernate.HibernateException: Could not parse configuration: /hibernate.cfg.xml
    at org.hibernate.cfg.Configuration.doConfigure(Configuration.java:2246)
    at org.hibernate.cfg.Configuration.configure(Configuration.java:2158)
    at org.hibernate.cfg.Configuration.configure(Configuration.java:2137)
    at org.jboss.tools.hibernate.proxy.ConfigurationProxy.configure(ConfigurationProxy.java:100)
    at org.hibernate.console.ConfigurationFactory.loadConfigurationXML(ConfigurationFactory.java:355)
    at org.hibernate.console.ConfigurationFactory.configureStandardConfiguration(ConfigurationFactory.java:279)
    at org.hibernate.console.ConfigurationFactory.buildConfiguration(ConfigurationFactory.java:174)
    at org.hibernate.console.ConfigurationFactory.createConfiguration(ConfigurationFactory.java:96)
    at org.hibernate.eclipse.console.common.HibernateExtension$5.execute(HibernateExtension.java:166)
    at org.hibernate.console.execution.DefaultExecutionContext.execute(DefaultExecutionContext.java:63)
    at org.hibernate.eclipse.console.common.HibernateExtension.execute(HibernateExtension.java:189)
    at org.hibernate.eclipse.console.common.HibernateExtension.buildWith(HibernateExtension.java:163)
    at org.hibernate.eclipse.console.common.HibernateExtension.build(HibernateExtension.java:134)
    at org.hibernate.console.ConsoleConfiguration.build(ConsoleConfiguration.java:189)
    at org.hibernate.eclipse.console.workbench.ConsoleConfigurationWorkbenchAdapter.getChildren(ConsoleConfigurationWorkbenchAdapter.java:43)
    at org.hibernate.eclipse.console.workbench.BasicWorkbenchAdapter.getChildren(BasicWorkbenchAdapter.java:98)
    at org.hibernate.eclipse.console.workbench.BasicWorkbenchAdapter.fetchDeferredChildren(BasicWorkbenchAdapter.java:104)
    at org.eclipse.ui.progress.DeferredTreeContentManager$1.run(DeferredTreeContentManager.java:238)
    at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)
Caused by: org.dom4j.DocumentException: Connection timed out: connect Nested exception: Connection timed out: connect
    at org.dom4j.io.SAXReader.read(SAXReader.java:484)
    at org.hibernate.cfg.Configuration.doConfigure(Configuration.java:2238)
    ... 18 more

即使在使用了许多休眠版本并多次更改 DTD 之后,我也无法找出问题所在。有人可以帮我解决这个问题。这是一个简单的 maven 项目,.cfg.xml 文件放在 src/main/java

我什至从这个网址http://www.mkyong.com/hibernate/maven-3-hibernate-3-6-oracle-11g-example-xml-mapping/下载了一个简单的项目,然后尝试添加新配置,但又一次有同样的问题。我刚刚更改了我拥有的相应数据库凭据。它们是正确的,因为使用相同的 jdbc url 我已经在数据源资源管理器中成功创建了一个新的数据库连接。请帮忙。

我公司的互联网运行良好。

4

2 回答 2

2

尝试更改hibernate.cfg.xmlfrom 中的 DTD 定义:

<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd">

至:

<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE hibernate-configuration SYSTEM
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd">

这样,XML 解析器将不会尝试从 Internet 加载 DTD 文件,但会尝试从 Hibernate jar 加载它。

于 2015-07-01T05:59:53.700 回答
1

你可以打开配置文件throw web browser(firefox),检查你的配置文件是否OK。如果它有什么问题,浏览器会显示给你。我参考(http://blog.csdn.net/caixiexin/article/details/7024623)。

于 2015-07-02T12:52:50.003 回答