我試圖檢索XML文件中的單個元素的值。我已經截斷了XML的相關位:與使用XPath Java的唯一項查詢XML沒有返回
<opt>
<security>
<check>
<secure>true</secure>
</check>
</security>
</opt>
我試圖從'安全'元素檢索'真'。
我有以下代碼:
DocumentBuilderFactory domFactory = DocumentBuilderFactory.newInstance();
domFactory.setNamespaceAware(true);
DocumentBuilder builder=domFactory.newDocumentBuilder();
Document doc = builder.parse(file);
XPath xpath=XPathFactory.newInstance().newXPath();
XPathExpression expr=xpath.compile("//opt/security/check/secure/text()");
Object result = expr.evaluate(doc, XPathConstants.STRING);
logger.warn(result.toString());
我只是試圖讓任何價值,現在,一旦我得到這個工作,我會改變字符串爲布爾值。
我的輸出是空白的,我已經嘗試了一堆不同的東西,包括以下的教程和使用的NodeLists(儘管這並沒有多大的意義對我來說,因爲這是一個獨特的元素)。我錯過了什麼嗎?
謝謝!
顯然,這是一個命名空間的問題...... – 2011-03-22 23:07:09