如何使用Mule DataWeave为XML声明添加standalone="yes"
Mule DataWeave 添加XML声明的standalone="yes"属性解决方案
要给XML输出的声明添加standalone="yes",不需要手动拼接XML声明,直接通过DataWeave的output指令配置即可,这是最稳妥的方式,避免手动拼接破坏XML结构。
具体实现代码
%dw 2.0 // 在output指令中指定standalone属性 output xml encoding="UTF-8" standalone="yes" --- { // 根元素可根据需求调整,示例对应期望输出的<admin> admin @( xmlns:xsi: "http://www.w3.org/2001/XMLSchema-instance", xsi#noNamespaceSchemaLocation: "csm_admin.xsd" ): payload.Input.*add }
说明
output xml后的standalone="yes"参数会直接让DataWeave生成包含该属性的XML声明,无需手动编写<?xml ...?>部分。- 根元素名称(示例中的
admin)可根据实际需求修改,注意保持开闭标签一致(你提供的期望输出里根元素开闭标签不一致,属于笔误,需自行修正)。 - 之前手动拼接声明失败,是因为DataWeave在输出XML时会自动生成标准声明,手动拼接的内容会被覆盖或导致结构错误,通过output指令配置才是官方支持的正确方式。
内容的提问来源于stack exchange,提问作者james11
相关产品推荐
相关产品推荐

