hibernate的dtd离线验证

    今天碰到这个问题,作一下笔记。也为不知道此技巧的同学,铺砖。

    【问题开始】  一开始是如下错:

org.dom4j.DocumentException: Connection timed out

 刚开始看的有点不懂,怎么可能。后来想想可能是加载配置文件的问题。但配置文件是本地的啊。无奈百度了一  把。发现还真有,多亏这几位兄台的文章:

http://hi.baidu.com/alushuai159/item/00fcd4f0cba314c6a835a2c7

http://bbs.csdn.net/topics/390372286

【问题原因】

 读取hibernate配置文件的时候,会联网验证DTD,如果你是代理上网,或者单机的话,程序无法直接联网,你就也会碰到这种情况。

【解决办法】

(1) hibernate的Mapping映射文件:

http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd  修改为 http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd

(2)hibernate的数据源配置文件:

http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd

替换成:

http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd

替换后,就不会联网验证,因为正常情况下,类库里是带了这些DTD文件的,就没有必要联网去下载了。


   

你可能感兴趣的:(hibernate的dtd离线验证)