我正在尝试从Soapui中的Request中解析XML。当我在没有任何内容的情况下解析Node时,如果定义的func()返回Null,则逻辑上String为Null:
def groovyUtils = new com.eviware.soapui.support.GroovyUtils( context )
def request = groovyUtils.getXmlHolder( mockRequest.requestContent )
def argumentString = request.getNodeValue("/soap:Envelope/soap:Body[1]/emm:RunApplication[1]/emm:argument[1]")
现在我尝试这样做:
try{argumentString.length()}catch(e){argumentsString = " "}
但这会在修正后杀死进程,并且不能完全满足我的需求。不能像我在Java中习惯的那样使用Simple if(func()!= NULL)?我怎样才能做到这一点?谢谢你的帮助!
答案 0 :(得分:2)
你可以测试null
值...:
argumentString = (argumentString != null) ? argumentString : " "
argumentString?.length()
不是length()
时才会评估argumentString
,null
。