2017-12-28 16 views
0

"var"ノードを取得できない理由は何ですか?私は何も印刷されて表示されません。だから、問題はノードが何も返さないということです。助けてください。どうもありがとう!ここで"var"のノードを取得できない理由

は私のJavaコードである:ここで

DocumentBuilder builder = DocumentBuilderFactory.newInstance().newDocumentBuilder(); 
Document doc = builder.parse(new InputSource(new StringReader(responseBody))); 
XPath xpath = XPathFactory.newInstance().newXPath(); 
// XPath Query for showing all nodes value 
XPathExpression expr = xpath.compile("/vxml/form/var"); 

NodeList nodes = (NodeList) expr.evaluate(doc, XPathConstants.NODESET); 
for (int i = 0; i < nodes.getLength(); i++) { 
    Node node = nodes.item(i); 
    System.out.println("test"); 
} 

はXMLです:

<?xml version="1.0" encoding="UTF-8"?> 
<vxml xmlns="http://www.w3.org/2001/vxml" xmlns:voxeo="http://community.voxeo.com/xmlns/vxml" version="2.1"> 
<form id="XCONTENT"> 
    <catch event="invalidResponse"> 
    <assign name="responseRetries" expr="responseRetries+1" /> 
    <clear namelist="CHOICES" /> 
    <goto nextitem="CHOICES" /> 
    </catch> 
    <var expr="1" name="responseRetries" /> 
    <var expr="''" name="choice" /> 
    <var expr="'8750000'" name="ntfnId" /> 
    <var expr="'8749000,8748000,8747000,8746000'" name="notIds" /> 
    <var expr="'228971'" name="deviceId" /> 
    <var expr="'0'" name="nodeId" /> 
    <var expr="'1'" name="orgId" /> 
    <var expr="'English'" name="userPreferredLang" /> 
    <var expr="'slow'" name="ttsRate" /> 
    <var expr="false" name="isValidationMessage" /> 
    <var expr="'8750000'" name="processedNotificationIds" /> 
    <var expr="'1815f630-bda2-45be-b08b-46a51d3aebd4'" name="callSid" /> 
    <var expr="'BEFORE'" name="authState" /> 
    <var expr="''" name="authNotificationIds" /> 
    <var expr="''" name="nodeName" /> 
    <var expr="false" name="RESPONSE_PLAYED" /> 
    <var expr="'true'" name="hasContent" /> 
    </form> 
</vxml> 
+0

再現できません。コピーしたXMLをテキストファイルにコピーし、コピーしたコードをファイルからXMLを読み込むように変更し、 'test'を17回印刷しました。 *(jdk1.8.0_91を使用)* – Andreas

答えて

0

はあなたの要素が名前空間にありますが、あなたのXPathはありません、名前空間内の要素を探しています。このサイトで「XPath default namespace」を検索すると、同じ問題を抱えた何千人もの人が見つかります。

関連する問題