さて、これはxmlです:
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<soap:Body>
<FECompUltimoAutorizadoResponse xmlns="http://ar.gov.afip.dif.FEV1/">
<FECompUltimoAutorizadoResult>
<PtoVta>12</PtoVta>
<CbteTipo>1</CbteTipo>
<CbteNro>1</CbteNro>
</FECompUltimoAutorizadoResult>
</FECompUltimoAutorizadoResponse>
</soap:Body>
</soap:Envelope>
CbteNro を取得したいのですが、FECompUltimoAutorizadoResponse が原因で取得できません。これを試してみました。
Document document = new Builder().build(responseString, "test.xml");
Nodes nodes = document.query("/soap:Envelope[@xmlns:soap=\"http://schemas.xmlsoap.org/soap/envelope/\"]/soap:Body/FECompUltimoAutorizadoResponse[@xmlns=\"http://ar.gov.afip.dif.FEV1/\"]/FECompUltimoAutorizadoResult/CbteNro\n");
System.out.println(nodes.get(0).getValue());
XOM を使用していますが、機能しません。次のメッセージが表示されます。
スレッド「メイン」nu.xom.XPathException での例外: XPath エラー: XPath 式は、バインドされていない名前空間プレフィックス soap を使用しています
ありがとう!