私は、このXMLからのorg.w3c.dom.Documentをbudilaと表現のXPath結果
/xyzevent/subscription/receiver/clientsubscription/servicemap/text()
結果、空の文字列でXPathExperssionを適用する場合
<xyzevent xmlns="http://www.xyz.com/common/xyzevent/v1" xmlns:xsi="http://www.w3.org2001XMLSchema-instance">
<header>
----
</header>
<subscription xmlns="http://www.xyz.com/common/xyzevent/source/v1">
<sender></sender>
<receiver>
<clientsubscription>
<servicemap>nanna</servicemap>
</clientsubscription>
</receiver>
</subscription>
</xyzevent>
私のXMLファイルです。表現の問題は何ですか?
は
xmlns = http://.../v1これを両方の場所から削除すると、値を取得できます。しかし、NamespaceContextをビルドして、ドキュメント内に名前空間の値が両方ある場合にどうすればいいのか説明できますか? – Pokuri
@Pokuri名前空間コンテキストに2つの別々の接頭辞を登録します。 'event'と' source'をそれぞれ適切なURIで置き換えます。あなたのXPath式は '/ event:xyzevent/source:subscription/source:receiver/...になります。' – Barend
しかしNamespaceContextは、namespaceURIと1つ以上の接頭辞を必要とします。次に、2つのNamespaceContextをXPath.setNamespaceContext(namespaceContext)に渡す方法はありますか。メソッド – Pokuri