问题:写的关于Struts2的小程序本来运行的好好的,后来断网了,一部署就会报错。错误开头:严重: Dispatcher initialization failed
Unable to load configuration. - Class: java.net.PlainSocketImpl
File: PlainSocketImpl.java
Method: connect
Line: 177 - java/net/PlainSocketImpl.java:177:-1
问题分析:对于这个问题,连上网就解决了,但这不是原因所在。
根源在struts.xml里的头部的声明有关,先贴出原来的声明
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
"http://struts.apache.org/dtds/struts-2.3.dtd">
这里的Struts Configuration 2.3运行时struts要读.dtd的文件,这个.dtd放在struts2-core-2.x.x.jar下,不过这下面放的不一定是struts-2.3.dtd,可能是放的struts-2.1.7.dtd。这样的话如果运行时开着网的话会从上面的链接处下载,但是如果断网的话就会报错。
解决方法:(1)联网运行
(2)把struts2-core-2.x.x.jar下面struts-default.xml中关于struts 的声明考到struts.xml下这样与所存的.dtd文件一致,就可以找到,然后顺利运行
本文探讨了Struts2应用程序在断网情况下部署失败的问题。解析了错误的根本原因在于struts.xml文件中的DTD声明与实际文件不匹配,并提供了两种解决方案。

1197

被折叠的 条评论
为什么被折叠?



