我是Groovy的新手,他试图从def中检索值并将其放在另一个def值中的特定位置。有人可以帮忙吗
def init = "Hello"
def msg = """<?xml version="1.0" encoding="UTF-8"?>
<report id="${init}"> -- here i want to replace with above value which is Hello>
<exception code="1">Invalid request</exception>
</report>
"""
我期望产量低于
<?xml version="1.0" encoding="UTF-8"?>
<report id="Hello">
<exception code="1">Invalid request</exception>
</report>
答案 0 :(得分:0)
将mimeType设置为application / xml应该可以。
<flow name="xmlFlow">
<http:listener config-ref="HTTP_Listener_Configuration" path="/groovy" doc:name="HTTP"/>
<scripting:component doc:name="Groovy">
<scripting:script engine="Groovy"><![CDATA[def init = "Hello"
def msg = """<?xml version="1.0" encoding="UTF-8"?>
<report id="${init}">
<exception code="1">Invalid request</exception>
</report>
"""]]></scripting:script>
</scripting:component>
<set-payload value="#[message.payloadAs(java.lang.String)]" mimeType="application/xml" doc:name="Set Payload"/>
</flow>