日期:2014-05-17  浏览次数:20608 次

Axis如何解析XML?
小弟初学axis。遇到一个问题,我要调用webservice,但传回来后要接受的是字符串,但这个字符串的内容是xml文件格式的,也就是要调用xml文件里面的参数,这参数为xml字符串。服务端和客户端的java代码怎么写?谢谢

------解决方案--------------------
/**
* 解析返回报文XML对象

* @return
*/
private A resolveAFromXml(String resultXml) {
A a= new A();
Document document = null;
try {
document = DocumentHelper.parseText(resultXml);
} catch (DocumentException e) {
throw new RuntimeException(e.getMessage(), e);
}
a.setErrorCode(this.getNodeValue(document,
"//HEAD/KEY"));
a.setErrorMessage(this.getNodeValue(document,
"//HEAD/KEY2"));
return a;
}
/**
* 通过Dom4j取某一节点值

* @param _node
* @param xpath
* @return
*/
private String getNodeValue(Node _node, String xpath) {
String value = null;
Node node = _node.selectSingleNode(xpath);
if (node != null) {
value = node.getText();
}
return value;
}
------解决方案--------------------
有两种方法可以解析XML:1.dom树结构来解析2.SAX解析器来解析(主要通过流解析)