我正在mule dataweave组件中进行xml到xml的转换。 但是输出会为每个段生成“xmlns:xsi =”http://www.w3.org/2001/XMLSchema-instance“。 我希望它没有任何问题,但有没有办法在dataweave中设置停止生成这些行。
Dataweave的输出示例:
<host>
<event xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
id="app"
time-event-applied="2015-08-10T15:14:40"
user-id="user:admin"
is-billable="N"
entity="UNIT"
entity-id="CHRS1501720"
xsi:nil="true"/>
<additional-info>
<field xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
id="X"
value="449"
xsi:nil="true"/>
<field xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
id="Y"
value="9431719"
xsi:nil="true"/>
<field xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
id="Z"
value="004"
xsi:nil="true"/>
</additional-info>
</host>
TIA
答案 0 :(得分:1)
这是我为我的问题找到的解决方案。
info:{
field @(id: "!23" , value: payload.Response.Detail.Header.ID ): null
}
info:{
field @(id: "!23" , value: payload.Response.Detail.Header.ID ): {}
}
从我的回答中可以明显看出,我只是用{}替换null部分,然后停止生成
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="true"
答案 1 :(得分:0)
您是否尝试在输出指令上使用skipNullOn属性?