【发布时间】:2019-01-31 20:15:24
【问题描述】:
我正在使用 Grails XML 转换器为某些域类注册自定义 XML 编组器。
我需要将一个类中的 XML 附加到目标 XML 中,例如:
<myobject>
<field1>xxx</field1>
<file>
<data>..</data>
...
</file>
</myobject>
其中 field1 在 MyObject 上声明,但文件子树是从文件加载的。
我发现了两种方法,都是转义文件子树生成的标签:
<myobject>
<field1>xxx</field1>
<file>
<data>..</data>
...
</file>
</myobject>
使用 convertAnother 和 chars 的这些方法都产生相同的结果:
XML.registerObjectMarshaller(MyObject) { o, xml ->
def _file = new File(o.file_name)
xml.build {
field1(o.field1)
xml.startNode 'file'
//xml.convertAnother vf.text
xml.chars vf.text
xml.end()
}
}
是否可以添加文件内容但未转义?
【问题讨论】:
-
也尝试了 JSON 转换器,做同样的事情,我得到一个转义的 JSON。
-
你试过
mkp.yieldUnescaped somestring吗?我使用它,但我不能确定我在哪里学到的,mkp完全未声明,但它有效......