java - mkp.yieldUnescaped 未工作

  显示原文与译文双语对照的内容
0 0

我在这里 am 。 我正在创建一个使用 Groovy 1.7的XML文档,而且一切都正常工作,除非一个部分在。

我就像这样开始:

 triadDoc = new XmlSlurper().parse(xmlTriadMessageDocumentPath)
 writer = new StringWriter()
 xmlBuilder = new StreamingMarkupBuilder()
 writer = xmlBuilder.bind {mkp.yield triadDoc}

这是非常好的,然后我将添加到这样的文档中:

 triadDoc.TriadPayload.Payload[0] ="<![CDATA[" + xmlBuilder.bind {mkp.yieldUnescaped dto.getCcdDoc()} +"]]>"

这不像我想要的那样工作- 我最终结束了:

 & lt;![CDATA[& lt;ClinicalDocument& gt;... (added extra blank to the escape sequences)

谁能告诉我什么是错误的? 我在网上找了很多线索。 谢谢 !

时间:原作者:4个回答

0 0

你需要将整个CDATA块传递给 yieldUnescaped

 mkp.yieldUnescaped("<![CDATA[.....
原作者:
0 0

注意:文档中的CDATA部分被解析器忽略。

也许这就是导致这个问题的原因。

为了得到'<'和'>'值,这四个字符需要在一起。

<[ cdata[ <ClinicalDocument> 。

原作者:
...