SoapUI の使用を開始しましたが、Groovy で Soap 応答を処理する方法がわかりません。現在、私のプロジェクトは NetBeans で開かれており、デバッグ後に SoapUI (eviware) にコピー アンド ペーストされます。私の質問は次のとおりです。
def Input = """ <S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/"> <S:Body>
<ns2:getSalesAuditsResponse xmlns:ns2="http://apidto.dto.t2.wsapi.ng.com/">
<return>
<code>0909019000004830</code>
<realOpenAmount>12</realOpenAmount>
<dueDate>2009-07-11T00:00:00+03:00</dueDate>
</return>
<return>
<code>0909119000006260</code>
<realOpenAmount>55.75</realOpenAmount>
<dueDate>2007-02-11T00:00:00+02:00</dueDate>
</return>
</ns2:getSalesAuditsResponse> </S:Body> </S:Envelope>
"""
特定の dueDate を持つ「リターン」ノードを見つける方法は? 私が推測できるように、それは次の近くになる可能性があります。
def document = new groovy.util.XmlSlurper().parseText(Input);
def sa = document.depthFirst().findAll { it.@dueDate=="2007-02-01T00:00:00+02:00" }
ただし、この場合、sa は [] です。結局のところ、元の XML で見つかったノードを削除する方法は?
XMLHolder を試していますが、SoapUI 内に存在する Netbeans の「コンテキスト」変数で初期化する方法がわかりませんでした。
def groovyUtils = new com.eviware.soapui.support.GroovyUtils(???context???) def dataHolder = groovyUtils.getXmlHolder( 入力 ) def data = dataHolder.getDomNode("//return[dueDate="2007-02- 11T00:00:00+02:00"]")
そして最後の一般的な質問: NetBeans で groovy スクリプトをデバッグし、後で SoapUI 3.0.1 で使用することは可能ですか? または、 groovy_for_SoapUI のコードのオートコンプリートとオンデマンドのドキュメントを取得することは不可能ですか?
どうもありがとう