`

org.dom4j.DocumentException: Connection timed out: connect Nested exception:

 
阅读更多

今天使用dom4j解析.xml的时候,  前提是我自定义了一个.xml文件.

大致内容如下:

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.1//EN" "http://struts.apache.org/dtds/struts-2.1.dtd">
<project>
 <name>
  <menu name="Student Management">
   <node>/project/test.action</node>
  </menu>
  <menu name="Deploy Management">
   <node>/project/selectBar.jsp</node>
  </menu>
  <menu name="view" value="/mainView.jsp">
   <node>/project/infoView.jsp</node>
  </menu>
 </name>
</project>

 

居然报了一个 连接超时的错误:
org.dom4j.DocumentException: Connection timed out: connect Nested exception: Connection timed out: connect
 at org.dom4j.io.SAXReader.read(SAXReader.java:484)
 at org.dom4j.io.SAXReader.read(SAXReader.java:321)
 at com.util.ReadXmlDataUtil.getLanguageXMLData(ReadXmlDataUtil.java:28)
 at com.admin.util.ReadXmlDataUtil.main(ReadXmlDataUtil.java:50)
Nested exception:
java.net.ConnectException: Connection timed out: connect
 at java.net.PlainSocketImpl.socketConnect(Native Method)
 at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333)
 at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195)
 at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182)
 at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366)
 at java.net.Socket.connect(Socket.java:519)
 at java.net.Socket.connect(Socket.java:469)
 at sun.net.NetworkClient.doConnect(NetworkClient.java:163)
 at sun.net.www.http.HttpClient.openServer(HttpClient.java:394)
 at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205)
 at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522)
 at org.dom4j.io.SAXReader.read(SAXReader.java:465)
 at org.dom4j.io.SAXReader.read(SAXReader.java:321)
 at com.huawei.ngbss.admin.util.ReadXmlDataUtil.getLanguageXMLData(ReadXmlDataUtil.java:28)
 at com.huawei.ngbss.admin.util.ReadXmlDataUtil.main(ReadXmlDataUtil.java:50)
Nested exception: java.net.ConnectException: Connection timed out: connect
 at java.net.PlainSocketImpl.socketConnect(Native Method)
 at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333)

解决方案:
后面找到了其中的原因:
是网络的问题.因为DOCTYPE的连接不同造成的.
<!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.1//EN" "http://struts.apache.org/dtds/struts-2.1.dtd">
使用了saxreader解析器的时候,会自动解析DOCTYPE里面的内容.如果连接不上网络,则会报连接超时的异常.

所以为了,不然解析DOCTYPE,则reader.setFeature(不加载dtd文件,false); 就不会去解析DOCTYPE了.

即可.

SAXReader reader = new  SAXReader();

reader.setFeature("http://apache.org/xml/features/nonvalidating/load-external-dtd", false);

 

分享到:
评论
1 楼 cysvip_pc 2012-02-24  

相关推荐

    org.dom4j.jar

    当我们遇到“java.lang.ClassNotFoundException: org.dom4j.DocumentException”的错误提示时,这通常意味着系统中缺少了DOM4j库,只需将“org.dom4j.jar”添加到项目类路径中即可解决此问题。 DOM4J是基于DOM和SAX...

    itextpdf5.4.3+itextasian5.2.0

    解决 com.itextpdf.text.DocumentException: Font 'STSongStd-Light' with 'UniGB-UCS2-H' is not recognized. 亲测可用!

    dom4j基础入门文档(SAX,DOM,XPATH)

    11. `org.dom4j.Node`: 为所有dom4j中的XML节点提供多态行为,是所有节点的基类。 12. `org.dom4j.NodeFilter`: 定义了一个过滤器或谓词,用于筛选节点。 13. `org.dom4j.ProcessingInstruction`: 定义XML处理指令,...

    使用 dom4j 解析 XML

    1. **下载`dom4j`库**:可以从官方网站http://dom4j.org/下载`dom4j`的最新版本,通常包括`dom4j-full.jar`或`dom4j.jar`等文件。 2. **配置ClassPath**:将下载的jar文件添加到项目的ClassPath中。如果是`dom4j-...

    dom4j解析xml详解,包含源代码,dom4j.jar包

    import org.dom4j.DocumentException; import org.dom4j.io.SAXReader; public class Dom4JExample { public static void main(String[] args) { try { SAXReader reader = new SAXReader(); Document document...

    dom4j解析字符串

    首先,我们import dom4j的相关类,包括Document、DocumentException、DocumentHelper和Element等。然后,我们使用DocumentHelper.parseText方法来解析XML字符串,并获取根元素。最后,我们可以使用Element对象的方法...

    dom4j document

    * @throws org.dom4j.DocumentException occurs whenever the build process fails. */ public void parseWithSAX(File aFile) throws DocumentException { SAXReader xmlReader = new SAXReader(); this.doc =...

    dom4j demo 使用

    import org.dom4j.DocumentException; import org.dom4j.DocumentFactory; import org.dom4j.Element; import org.dom4j.io.SAXReader; public class Dom4jDemo { public static void main(String[] args) { try ...

    dom4j -1.6.1 源码 dom4j -1.6.1 源码

    4. **异常处理**: dom4j在源码中广泛使用了异常处理机制,如`DocumentException`和`IOException`,确保在处理XML时能捕获并处理可能出现的问题。 **五、使用示例** 以下是一个简单的dom4j使用示例: ```java import...

    使用dom4j读取xml四种方法

    ### 使用dom4j读取XML的四种方法 在Java开发中,处理XML文件是一种常见的需求。Dom4j作为一款简洁高效的Java库,被广泛应用于解析、操作XML文档。本文将详细介绍使用dom4j读取XML文件的四种常见方法,并通过示例...

    dom4j的使用+dom4j.jar

    import org.dom4j.DocumentException; import org.dom4j.Element; import org.dom4j.io.SAXReader; public class Dom4JExample { public static void main(String[] args) { try { SAXReader reader = new ...

    tif 转合并 pdf itext java

    6. **处理多页TIFF**:如果TIFF文件包含多页,重复步骤4和5,为每一页创建一个新的PDF页面并添加图像。 7. **合并PDF**:对于多个TIFF文件,创建一个主PDF文档,然后使用PdfCopy或PdfSmartCopy类将其他PDF文件逐页...

    dom4j入门例子

    import org.dom4j.DocumentException; import org.dom4j.io.SAXReader; public class ParseXML { public static void main(String[] args) { SAXReader reader = new SAXReader(); try { Document document = ...

    Dom4j封装和解析

    import org.dom4j.DocumentException; import org.dom4j.io.SAXReader; public class Dom4jExample { public static void main(String[] args) { try { SAXReader reader = new SAXReader(); Document document...

    dom4j 解析(读取) xml 节点数据

    import org.dom4j.DocumentException; import org.dom4j.Element; import org.dom4j.io.SAXReader; ``` 接下来,我们将创建一个`SAXReader`实例,它是DOM4J中的解析器,用于读取XML文件: ```java SAXReader ...

    dom4j解析xml文件代码示例

    import org.dom4j.DocumentException; import org.dom4j.io.SAXReader; File file = new File("emailTemplateConfig.xml"); SAXReader reader = new SAXReader(); try { Document document = reader.read(file); }...

    Dom4j对xml文件的解析

    import org.dom4j.DocumentException; import org.dom4j.DocumentFactory; import org.dom4j.Element; import org.dom4j.io.SAXReader; public class Dom4jExample { public static void main(String[] args) { ...

    使用dom4j生成和读取hibernate.cfg.xml

    import org.dom4j.DocumentException; import org.dom4j.io.SAXReader; // 创建DocumentBuilder SAXReader reader = new SAXReader(); try { // 读取XML文件 Document doc = reader.read(new File("path/to/...

    Dom4j解析XML及中文问题

    import org.dom4j.DocumentException; import org.dom4j.DocumentFactory; import org.dom4j.Element; import java.io.File; public class Dom4jExample { public static void main(String[] args) { try { // ...

Global site tag (gtag.js) - Google Analytics