我在Java中使用rpxnow,如何使用org.w3c.dom API来获取此XML响应中的字段identifier
?
<?xml version='1.0' encoding='UTF-8'?>
<rsp stat='ok'>
<profile>
<displayName>
brian
</displayName>
<identifier>
http://brian.myopenid.com/
</identifier>
<preferredUsername>
brian
</preferredUsername>
<providerName>
Other
</providerName>
<url>
http://brian.myopenid.com/
</url>
</profile>
</rsp>
答案 0 :(得分:0)
您是否查看了包org.w3c.dom
的API文档?类Element
包含诸如getElementsByTagName(String name)
之类的方法,以获取具有特定标记名称的子元素(以及可能有用的其他方法)。但是,使用此API有点麻烦。您可以使用XPath(请参阅包javax.xml.xpath
)来使用更少的代码行。例如(未经测试):
Element element = ...;
XPath xpath = XPathFactory.newInstance().newXPath();
Node node = (Node) xpath.evaluate("/rsp[@stat='ok']/profile/identifier", element, XPathConstants.NODE);
String value = node != null ? node.getTextContent().trim() : "";