Caughtexception while loading filecom/simpleworkflow/action/LoginAction-validation.xml
严重: Caught exception while loading file com/simpleworkflow/action/LoginAction-validation.xml
struts.apache.org- [unknown location]
Connectiontimed out: connect - [unknown location]
Causedby: java.net.ConnectException: Connection timed out: connect
Causedby: java.io.FileNotFoundException:http://www.opensymphony.com/xwork/xwork-validator-1.0.3.dtd
Causedby: java.net.UnknownHostException: struts.apache.org
以上都是该问题可能报的错误。
解决方法:
产生该问题主要是由于无法联网获得xwork-validator-1.0.3.dtd文件,所以在断网的情况下就会产生连接超时问题。遇到这个问题我们可以按如下步骤验证:
1:我们需要验证你的配置xml文件中配置的DTD信息是否正确,也就是说服务器上是否真的还有这个文件。
2:如果路径正确,在联网的情况下能够正确链接该dtd配置文件,而在断网情况下仍出现连接超时的问题,则需要在IDE工具中手动配置该dtd文件路径。
我最初的配置如下:
<?xml version="1.0" encoding="GBK"?>
<!DOCTYPE validators PUBLIC
"-//OpenSymphony Group//XWorkValidator 1.0.3//EN"
"http://www.opensymphony.com/xwork/xwork-validator-1.0.3.dtd ">
将该dtd地址拷贝到浏览器中进行访问,发现该地址路径早已不存在。因此证明我的dtd路径就有问题。经过查找正确的配置应为:
<!DOCTYPE validators PUBLIC
"-//Apache Struts//XWork Validator 1.0.3//EN"
"http://struts.apache.org/dtds/xwork-validator-1.0.3.dtd">
在联网的情况下,能够正确链接该dtd文件。而在断网的情况下仍然无法链接该文件,因此考虑进行第二步,手动添加该dtd路径映射。具体方法如下:
打开Eclipse的windowàpreferences
搜索XML Catalog,点击右侧Add,添加一条映射信息:
将下载下来的dtd(将该dtd路径使用浏览器打开即可下载),放入磁盘的任意位置,add - location 选择 File System,再将key值设置好即可完成映射。
通过观察employees.xml的格式我们可以反向的创建出employees.xsd文件,但是为了快捷起见,我们可以选择使用转换工具(XML to XSD)来完成这项工作,这里我将使用trang:http://www.thaiopensource.com/relaxng/trang.html
首先下载最新版的trang.jar文件,然后将employees.xml和trang.jar放在同一个目录下,运行如下命令行:
java -jar trang.jar employees.xml employees.xsd
原文链接:https://www.f2er.com/xml/298300.html