XML ドキュメント内の特定のノードを検索しようとすると、名前空間に問題があります。私が使用しているコードは次のとおりです。
簡略化された XML ファイル:
<?xml version="1.0" encoding="UTF-8"?>
<map:sitemap xmlns:map="http://apache.org/cocoon/sitemap/1.0">
<map:components>
<map:generators>
...
<map:generator name="FinsXMLGenerator"/>
</map:generators>
...
次のノードを受信しようとしています:
<map:generator name="FinsXMLGenerator"/>
次の DOMCategory クロージャーを使用します。
def closure = { sitemap ->
def result = sitemap.'map:sitemap'.'map:components'.'map:generators'.'map:generator'.'@name'.find({
it.text() == 'FinsXMLGenerator'
});
return result;
}
XML で名前空間を使用せずに、このような多くのクロージャを作成しましたが、完全に正常に動作します。しかし、名前空間はすべてを破壊します。
エラーは発生しません。結果は null です。誰でもパスを修正するのを手伝ってもらえますか-例
sitemap.'map:sitemap'...
私はグルービーを使用しています。