问题如题所述,补充的是在联网状态下是完全正常的。错误描述如下:
org.hibernate.HibernateException: Could not parse configuration: /hibernate.cfg.xml
原因在于该配置文件中头部位置的配置项:
<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
红色标记部分表明了每次加载该配置文件的时候都会去指定的网站查找hibernate-configuration-3.0.dtd文件。
同时,***.hbm.xml当中也一样:
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
其hibernate-mapping-3.0.dtd文件也会发生类似的请求。
当无法连接网络之时,程序就会报错。当然,偶尔也会成功,那是因为缓存的原因。
解决的办法就是在项目根目录下创建一个文件家用来专门存放这两个文件。
这里最好注意一下版本匹配问题。
通常情况下,所加载的hibernateX.jar中\org\hibernate路径之下就有,拷贝出来放入其中即可。
OK,成功了!