0
私はJavaで処理しているSOAP応答を持っています。それはいくつかの異なる子要素を持つ要素を持っています。私は、すべてのボンドノードをつかみ、ACTIVEの値を持つ子タグを持つものを見つけるために、次のコードを使用しています。最初の評価文によって返されるNodeListには、SOAP応答内の子の正しい数である4つのノードが含まれますが、それらはすべて最初の要素の複製です。ここでは、コードは以下のとおりです。あなたの助けのためのXPathクエリが重複するノードを返します
NodeList nodes = (NodeList)xpath.evaluate("//:bond", doc, XPathConstants.NODESET);
for(int i = 0; i < nodes.getLength(); i++){
HashMap<String, String> map = new HashMap<String, String>();
Element bond = (Element)nodes.item(i);
// Get only active bonds
String status = xpath.evaluate("//:status", bond);
String id = xpath.evaluate("//:instrumentId", bond);
if(!status.equals("ACTIVE"))
continue;
map.put("isin", xpath.evaluate(":isin", bond));
map.put("cusip", xpath.evaluate(":cusip", bond));
}
おかげで、 ジャレッド
おかげで、 。 //:bond [:status = 'ACTIVE'] 私は前にこれをやろうとしましたが、状態の前に愚かなコロンを残してしまったので動作しませんでした。 – Jared