这是一个让我很头痛的问题,我是在一个其他的项目框架的基础上来开发新的项目。 当使用struts验证框架时,突然发现这个验证不起作用了,我就纳闷了之前用这个开发的项目好好的怎么到我这就不能用了呢? xml文件头 <?xml version="1.0" encoding="UTF-8"?>
在不联网的情况下报 www. - [unknown location] 在联网的情况下报 Caused by: java.io.IOException: Server returned HTTP response code: 403 for URL: http:///xwork/xwork-validator-1.0.2.dtd 我就在网络上查找原因,其中我看到一个说是struts2被阿帕奇收购了地址变了变成了http://struts./dtds/xwork-validator-1.0.2.dtd 我就把地址改成了 <!DOCTYPE validators PUBLIC "-//OpenSymphony Group//XWork Validator 1.0.2//EN" "http://struts./dtds/xwork-validator-1.0.2.dtd"> 改过之后我一实验果然验证气作用了不报错了,我的内心是相当的happy啊,可我还没happy几分钟,悲剧就再次发生了,因为在断网的情况下还是报错。苍天啊可怜可怜我吧别再折磨我了。都崩溃了 然后我继续google,发现还有有些盆友跟我一样遇到了类似的问题,但都没有发现解决方案,其中有一个是说把xwork-validator-1.0.2.dtd搞到本地,然后地址改成本地文件所在的路径,我觉得这个不靠谱,可能管用,但我不认为堂堂一个struts的框架会出现这种低级的做法。 这里插一句,xwork-validator-1.0.2.dtd这个文件只是xml格式检验的标准,说是会在jar包中自动检索此文件,我就搜了一下在xwork-core-2.3.1.2中果然存在,但为啥还会报错呢于是呼就出现了我上面的所作所为。 那我就纳闷了为啥就不起作用了此处省略1w字 so我就把用这个框架开发好的项目jar包靠过来对比一下,靠我突然发现有木有有木有 jar包版本不一样,我了个去,是谁是谁是谁把jar包升级了,咋不跟俺汇报一下,苍天啊大地啊欲哭无泪有木有 so把jar包解压 找到 此文件xwork-validator-1.0.2.dtd,打开内容如下
此xml头应该是
好此上就是我的struts2验证框架悲惨之旅,希望童鞋们不要犯类似错误,书此文警示世人 |
|