我们正在使用cloudhub通知,以便在出现异常时收到邮件提醒。我们将XML有效负载作为电子邮件消息的一部分。我们收到邮件但缺少XML标签。
配置:
<cloudhub:create-notification domain="${mule.cloudhub.domain}"
config-ref="Cloudhub" message="#[payload]"
priority="ERROR" doc:name="Cloudhub"/>
预期:
<books>
<book>
<title>title1</title>
<price>price1</price>
</book>
</books>
实际:
title1 price1
答案 0 :(得分:0)
这只是我做的一个解决方法。不确定它是否是正确的方法,但它适用于我。添加
<expression-component doc:name="Expression"><![CDATA[payload=payload.replace('>','&gt;'); payload=payload.replace('<','&lt;');]]></expression-component >
在cloudhub连接器之前更改有效负载,以便应用xml
转义字符
答案 1 :(得分:0)
尝试在Chrome和IE中打开XML文件时,我遇到了类似的问题。我发现如果XML文件太大(例如37兆),则该文件将打开,但XML标记将丢失。它只会显示标签内的数据。例如,我希望它在浏览器中看起来像这样:
<ns0:quality>17</ns0:quality>
<ns0:duration>900</ns0:duration>
但是,它将显示为
17900
在浏览器中。您的解决方案是减小XML文件的大小,然后显示标签。 (此外,如果计算机内存不足(通过重新启动即可解决),我已经看到过这种情况。)