`
java_frog
  • 浏览: 244576 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

jdom整个拷贝第三方传入的Element

阅读更多
今天在读取xml将里面内容拷贝到另一Document的时候出现下列问题: 

要将以下return下内容
<?xml version='1.0' encoding='GB18030'?>
<RETURN>
	<RetCode>响应码</RetCode>
	<RetMsg>响应码说明</RetMsg>
	<TrDate>处理日期</TrDate>
	<BatNo>批次号</BatNo>
	<Stat>处理状态</Stat>
	<TrStat>交易状态</TrStat>
	<BatStatDes>批次状态说明</BatStatDes>
</RETURN>

拷贝到以下body中
<?xml version="1.0" encoding='GB18030'?>
<TranData>
	<Head />
	<Body>
		<RetCode>响应码</RetCode>
		<RetMsg>响应码说明</RetMsg>
		<TrDate>处理日期</TrDate>
		<BatNo>批次号</BatNo>
		<Stat>处理状态</Stat>
		<TrStat>交易状态</TrStat>
		<BatStatDes>批次状态说明</BatStatDes>
	</Body>
</TranData>

用了
Element mOutBodyEle = new Element("Body");
mOutBodyEle.addContent(reDoc.getRootElement());

但是报了如下错误
Exception in thread "main" org.jdom.IllegalAddException: The element "RETURN" could not be added as the root of the document: The Content already has an existing parent document
	at org.jdom.ContentList.add(ContentList.java:205)
	at org.jdom.ContentList.add(ContentList.java:131)
	at java.util.AbstractList.add(AbstractList.java:89)
	at org.jdom.Element.addContent(Element.java:811)
	at com.guohr.net.CallWebsvcByFinance.batchStatusQuery(CallWebsvcByFinance.java:71)
	at com.guohr.net.CallWebsvcByFinance.main(CallWebsvcByFinance.java:131)

后来网上有人说用detach()方法,但是我用了之后拷贝的个数丢失了,后来采用了clone()方法后解决了这个问题,看来人家设计的时候都考虑好了,真的很强大啊
mOutBodyEle.addContent(reDoc.getRootElement().detach());
			for (int i = 0; i < reDoc.getRootElement().getContentSize(); i++) {
				mOutBodyEle.addContent((Element)(reDoc.getRootElement().getContent(i).clone()));
			}
分享到:
评论

相关推荐

    jdom开发工具包

    jdom1.1.1与jdom2.05最新开发工具包。...import org.jdom.Element; import org.jdom.input.SAXBuilder; jdom2.05使用方法: import org.jdom2.Document; import org.jdom2.Element; import org.jdom2.input.SAXBuilder;

    jdom源码+jdom.jar

    jdom源码+jdom.jar jdom源码+jdom.jar

    Jdom教程 Jdom教程.pdf

    Jdom教程. .

    jdom-1.0,jdom解析xml

    jdom-1.0 jdom jdom-1.0,jdom解析xml

    jdom-1.1.zip jdom-1.1.jar jdom.jar jdom库 jdom操作xml

    jdom-1.1.zip jdom-1.1.jar jdom.jar jdom库 jdom操作xml

    JDOM(java)使用详解及实例

    org.jdom.xpath 包含了对xml文档xpath操作的类三、JDOM 类说明 1、org.JDOM这个包里的类是你J解析xml文件后所要用到的所有数据类型。 Attribute CDATA Coment DocType Document Element EntityRef ...

    jdom文件

    jdom jdom jdom jdom jdom

    jdom2-2.0.6-API文档-中文版.zip

    赠送jar包:jdom2-2.0.6.jar; 赠送原API文档:jdom2-2.0.6-javadoc.jar; 赠送源代码:jdom2-2.0.6-sources.jar; 赠送Maven依赖信息文件:jdom2-2.0.6.pom; 包含翻译后的API文档:jdom2-2.0.6-javadoc-API文档-...

    Android代码-jdom

    Introduction to the JDOM project Please see the JDOM web site at http://jdom.org/ and GitHub repository at https://github.com/hunterhacker/jdom/ Quick-Start for JDOM See the github wiki for a Primer ...

    JDOM讲解(java)

    JDOM讲解 JDOM讲解 JDOM讲解

    jdom源代码,包含jdom.jar

    jdom源代码,其中包含jdom.jar

    jdom1.1.3xml解析工具类

    org.jdom包含了所有的xml文档要素的java类 org.jdom.adapters包含了与dom适配的java类 org.jdom.filter包含了xml文档的过滤器类 org.jdom.input包含了读取xml文档的类 org.jdom.output包含了写入xml文档的类 org....

    jdom-1.1.2&jdom帮助文档

    压缩包内有jdom-1.1.2和jdom的chm格式的帮助文档,文档的内容来自官网,因而能够保证完整性。

    JDOM 介绍及使用指南

    JDOM是一个开源项目,它基于树型结构,利用纯JAVA的技术对XML文档实现解析、生成、序列化以及多种操作。 JDOM 直接为JAVA编程服务。它利用更为强有力的JAVA语言的诸多特性(方法重载、集合概念以及映射),把SAX和...

    jdom 下载 jdom 下载

    jdom 下载 jdom 下载jdom 下载 jdom 下载jdom 下载 jdom 下载jdom 下载 jdom 下载jdom 下载 jdom 下载

    JDOM1.1(Jdom文档)

    编写XML时要用到JDOM是需要 包含有jar包,API文档 源代码等

    JDOM 介绍及使用

    JDOM是一个开源项目,它基于树型结构,利用纯JAVA的技术对XML文档实现解析、生成、序列化以及多种操作。 JDOM 直接为JAVA编程服务。它利用更为强有力的JAVA语言的诸多特性(方法重载、集合概念以及映射),把SAX和...

    JDOM v1.0 API

    JDOM v1.0 API Specification jdom api文档

    JDOM的jar包 jdom-b7.jar

    JDOM是一个开源项目,它基于树型结构,利用纯JAVA的技术对XML文档实现解析、生成、序列化以及多种操作。 JDOM 直接为JAVA编程服务。它利用更为强有力的JAVA语言的诸多特性(方法重载、集合概念以及映射),把SAX和...

    Web.xml文件配置JDOM對XML文件操作

    import org.jdom.Element; import org.jdom.input.SAXBuilder; public class XmlReader { /* * fileName文件的路徑和名稱 * firstChild為xml第一個節點 * */ public Element ReaderXml(String fileName,String ...

Global site tag (gtag.js) - Google Analytics