`

Http解析dom

阅读更多

形容一下业务需求,然后记录方法。

业务需求:

需要向某个固定的URL发送一个带参数的HTTP请求。并解析返回的XML数据,取到有用数据。

例如:

我要向http://111.12.1.2/MWBusinessModel/xmlrpc发送一个含有参数user=test的请求后,会返回如下xml,

<?xml version="1.0" encoding="UTF-8"?><methodResponse><params><param><value><![CDATA[F13D6E31-6687-49F1-9695-A582775B199A]]></value></param></params></methodResponse>

 

想获取"F13D6E31-6687-49F1-9695-A582775B199A"的值。

 

代码:

	/**
	 * 取得Content
	 * 
	 * @param param 需要向请求中传的参数
	 * @return
	 */
	public String getContent(String param) {
                private static final String XML_RPC_URL = "http://111.2.35.5/MWBusinessModel/xmlrpc";
		String xmlResp = null;
		try {
			xmlResp = hc.doPost(XML_RPC_URL, param);
		} catch (ClientProtocolException e) {
			logger.error("", e);
		} catch (IOException e) {
			logger.error("", e);
		}

		Document doc = null;

		try {
			//获得document
			doc = DocumentHelper.parseText(xmlResp);
		} catch (DocumentException e) {
			logger.error("", e);
		}

		Element methodResponseNode = doc.getRootElement();
		Element faultNode = methodResponseNode.element("fault");
		if (faultNode != null) {
			return null;
		}
		//获取params节点下param节点下的value的值(这种方法自动去掉<![CDATA[]字符串)
		Element paramsNode = methodResponseNode.element("params");
		Element paramNode = paramsNode.element("param");
		Element valueNode = paramNode.element("value");
		return valueNode.getText();
	}

 

1
3
分享到:
评论
1 楼 lianglaiyang 2013-12-05  
用httpclient不是很方便的可以实现么?

相关推荐

    Android 创建与解析XML Dom方式

    Android 创建与解析XML Dom方式 博客原文:http://blog.csdn.net/sunboy_2050/article/details/7516058

    JavaScript的HTML解析器jsdom.zip

    var jsdom = require("jsdom"); jsdom.env(  "https://iojs.org/dist/",  ["http://code.jquery.com/jquery.js"],  function (errors, window) {  console.log("there have been", window.$("a")....

    dom4j解析XML帮助

    的MSDN 网站上也有成百上千页专门讲SOAP(http://msdn.microsoft.com)。 本章中,我们解释什么是SOAP,为什么它是如此重要的Web 开发模式的未来方向 的一部分。这将有助于掌握基础,并为实际使用SOAP 工具箱打铺垫...

    HTML5DOMDocument一个PHP的更好的HTML5解析器

    HTML5DOMDocument 一个PHP的更好的HTML5解析器

    DOM编辑器用于JSP

    DOM是一种独立于语言和平台的XML解析模型。给出了支持DOM核心模型和多种DOM扩展规范的XML编辑器ONCEXMLEditor的实现。ONCEXMLEditor具有高效的XML验证和序列化性能,同时提供给用户多种功能,包括按需遍历文档、提供上...

    android, pull,sax,dom 解析

    android平台下SAX,dom,pull解析方式比较 详细注解请看 http://blog.csdn.net/ajun495175289/article/details/9058731

    MFC、DOM实现的XML文件解析、修改和生成

    功能说明:对附件的xml文件进行解析,获取到指定字段。并且可以更新字段、添加和删除字段。 详细介绍请看http://sonicning.blogbus.com/logs/36726735.html

    XML.rar_java Dom xml_java xml dom_xml_xml dom tree java

    使用DOM解析XML文件 Dom解析是将xml文件全部载入,组装成一颗dom树,然后通过节点以及节点之间的关系来解析xml文件。对于特别大的文档,解析和加载整个文档可能很慢且很耗资源 http://www.iteye.com/topic/763926

    Android 中利用SAX ,Dom,pull解析 XML 文件代码

    Android 中利用SAX ,Dom,pull解析 XML 文件代码 每种方式都介绍了代码,具体的文档在个人博客: http://blog.csdn.net/blueskydyliu/article/details/7055311 中介绍了。

    java解析xml及4种常用解析比较

    1)DOM(JAXP Crimson解析器) DOM是用与平台和语言无关的方式表示XML文档的官方W3C标准。DOM是以层次结构组织的节点或信息片断的集合。这个层次结构允许开发人员在树中寻找特定信息。分析该结构通常需要加载整个...

    基于Qt的xml解析

    基于Qt的xml解析,使用dom方式,程序示例。配合博文http://blog.csdn.net/lankin2013/article/details/41523065

    ios-iOS中的json和xml解析.zip

    2.XML 系统的解析(SAX方式),三方google的一个解析方式(DOM解析) SAX 解析: 这是苹果系统自带的xml解析方法,特点就是:逐行解析, 这样方式效率低,但是可以快速的判断定位到哪一行出错。 DOM解析:全局解析...

    HTML解析器 jsoup

    Document doc = Jsoup.parse(input, "UTF-8", "http://example.com/"); Element content = doc.getElementById("content"); Elements links = content.getElementsByTag("a"); for (Element link : links) { ...

    Android解析XML的三种方式SAX、Pull、Dom

    在android开发中,经常用到去解析xml文件,常见的解析xml的方式有一下三种:SAX、Pull、Dom解析方式。最近做了一个android版的CSDN阅读器,用到了其中的两种(sax,pull),本文对android解析xml的这三种方式进行一次...

    jdom+dom4j

    解析XML文件时,jdom和dom4j的jar包 具体项目代码 http://blog.csdn.net/sdsky1987/article/details/7286306

    Java中读取XML 文件的知识点

    xml 解析 dom 文档对象模型(随机访问) 效率慢 受大小限制(10M) SAX 事件驱动(效率高,不受大小限制) 一、Dom4j下载及使用Dom4j读写XML简介: 要使用dom4j读写XML文档,需要先下载dom4j包,dom4j官方网站...

    android使用pull 解析xml文件源码

    pull解析xml文件,和sax和dom一样 都可以脱离android单独使用,pull和sax的原理一样,不一样的地方是pull读取xml文件后调用方法返回的是数字, 读取到xml的声明返回数字0 START_DOCUMENT; 读取到xml的结束返回数字1 ...

    详解Android之解析XML文件三种方式(DOM,PULL,SAX)

    1.xml文件代码 &lt;?xml version=1.0 encoding=UTF-8 ?...@ taglib uri=http://java.sun.com/jsp/jstl/core prefix=c%&gt; &lt;&#37;@ page isELIgnored=false %&gt; ${fqs} var=fq&gt; &lt;fq name=${fq.nam

    android如何使用DOM来解析XML+如果做一个表情的弹出框

    见博客:http://blog.csdn.net/baidu_nod/article/details/38375283

Global site tag (gtag.js) - Google Analytics