用 groovy 文件中的字符串替换 XML 路径

Replace XML path with a string in groovy file

我正在尝试用字符串替换 xml 根节点,但它不允许我这样做。

我试着把它当作 String str = "SOAP-ENV:Body'.'ns1:creditCardResponse";

我不应该在所有这些行中重复 SOAP-ENV:Body'.'ns1:creditCardResponse

 def rootnode = new XmlParser().parseText(responseXml);
 status = rootnode.'SOAP-ENV:Body'.'ns1:creditCardResponse'.return.Status.text();
 errorCode = rootnode.'SOAP-ENV:Body'.'ns1:creditCardResponse'.return.Errorcode.text();
 errorInfo = rootnode.'SOAP-ENV:Body'.'ns1:creditCardResponse'.return.Errorinfo.text();
 referenceCode = rootnode.'SOAP-ENV:Body'.'ns1:creditCardResponse'.return.ReferenceCode.text();
 requestIp = rootnode.'SOAP-ENV:Body'.'ns1:creditCardResponse'.return.RequestIP.text()

如有任何想法,我们将不胜感激。

谢谢。

请记住,这些 "paths" 只是一系列正常的 groovy 属性 访问,因此您可以将路径中的任何中间点存储为变量并从那里继续导航:

deg rtn = rootnode.'SOAP-ENV:Body'.'ns1:creditCardResponse'.return
status = rtn.Status.text()
errorCode = rtn.Errorcode.text()
// etc.