Tôi cố gắng để phân tích yêu cầu SOAP trong java nhưng mã không được trả lại bất kỳ nút đây là mã ai có thể tìm thấy lỗiParse XML với namespace trong Java sử dụng xpath
String xml="<soapenv:Envelope xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\" xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:ser=\"http://services.web.post.list.com\"><soapenv:Header><authInfo xsi:type=\"soap:authentication\" xmlns:soap=\"http://list.com/services/SoapRequestProcessor\"><!--You may enter the following 2 items in any order--><username xsi:type=\"xsd:string\">[email protected]</username><password xsi:type=\"xsd:string\">PfasdfRem91</password></authInfo></soapenv:Header></soapenv:Envelope>";
System.out.println(xml);
DocumentBuilderFactory domFactory = DocumentBuilderFactory.newInstance();
domFactory.setNamespaceAware(true);
DocumentBuilder builder = domFactory.newDocumentBuilder();
Document doc = builder.parse(new InputSource(new StringReader(xml)));
XPath xpath = XPathFactory.newInstance().newXPath();
// XPath Query for showing all nodes value
try
{
XPathExpression expr = xpath.compile("/soapenv:Envelope/soapenv:Header/authInfo/password");
Object result = expr.evaluate(doc, XPathConstants.NODESET);
NodeList nodes = (NodeList) result;
System.out.println("Got " + nodes.getLength() + " nodes");
// System.out.println(nodes.item(0).getNodeValue());
}
catch(Exception E)
{
System.out.println(E);
}
Hãy thử những: http://stackoverflow.com/questions/5673708/parsing-xml-with-xpath-in-java-get-data-from-xml-file-with-xpath-and-nodelist http://stackoverflow.com/ques tions/5519766/search-in-xml-file-với-xpath-in-android/5664438 # 5664438 – alibenmessaoud
cảm ơn tôi sẽ thử những điều này – Raheel