Tomcat无法启动(Struts 2 jquery问题)

时间:2013-02-13 08:40:39

标签: java tomcat struts2 struts2-jquery

启动tomcat时,我遇到了这个错误:

    Caused by: java.io.FileNotFoundException: http://struts.apache.org/dtds/struts-2.3.dtd
    at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1401)
    at com.sun.org.apache.xerces.internal.impl.XMLEntityManager.setupCurrentEntity(XMLEntityManager.java:654)
    at com.sun.org.apache.xerces.internal.impl.XMLEntityManager.startEntity(XMLEntityManager.java:1292)
    at com.sun.org.apache.xerces.internal.impl.XMLEntityManager.startDTDEntity(XMLEntityManager.java:1259)
    at com.sun.org.apache.xerces.internal.impl.XMLDTDScannerImpl.setInputSource(XMLDTDScannerImpl.java:260)
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$DTDDriver.dispatch(XMLDocumentScannerImpl.java:1169)
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$DTDDriver.next(XMLDocumentScannerImpl.java:1065)
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$PrologDriver.next(XMLDocumentScannerImpl.java:978)
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:625)
    at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:116)
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:488)
    at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:819)
    at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:748)
    at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:123)
    at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1208)
    at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:525)
    at javax.xml.parsers.SAXParser.parse(SAXParser.java:392)
    at com.opensymphony.xwork2.util.DomHelper.parse(DomHelper.java:113)
    ... 28 more

我的代码一直工作到最后一天。今天,当我尝试启动tomcat时会出现此错误。我在我的项目中使用struts2-core-2.2.1.1.jar和struts2-jquery-plugin-3.3.1.jar文件。

为什么我的代码停止工作?相同的代码一直工作到昨天。

此外,链接http://struts.apache.org/dtds/struts-2.3.dtd会出现404错误。在该位置找不到文件。

2 个答案:

答案 0 :(得分:1)

您的代码不应尝试在线访问dtd。

您不应该假设dtd URI 是有效的网址,即使这通常也是一个网址。

您可以提供DTD的本地可访问路径。

一般来说,您不应该假设您的服务器可以访问“互联网”,这是不可靠的。

编辑:使用struts 2.3.8可能会解决问题。

http://mvnrepository.com/artifact/org.apache.struts/struts2-core/2.3.8

答案 1 :(得分:0)

昨天,当一个以前工作的网络应用程序停止使用上述错误时,我遇到了完全相同的问题。经过多次努力,这是2013年2月12日至2013年2月13日的一个问题,是由Apache Struts项目迁移服务器引起的。网址http://struts.apache.org/dtds/struts-2.3.dtd现在在今天上午(格林威治标准时间06:00)再次运行 - 但是,尝试下载最新版本的Struts(2.3.8)仍然给出了403 Forbidden响应。