1

私は本当にここで立ち往生しています。Groovy 1.7を使用してXMLドキュメントを作成していますが、1つのセクションがエスケープされるべきでない場合を除いて、すべてが機能しています。

私はこのように始めています:

            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

2 に答える 2

2

CDATAブロック全体をyieldUnescapedに渡す必要があります

 mkp.yieldUnescaped( "<![CDATA[.....
于 2010-06-04T23:28:13.603 に答える
0

注:ドキュメントのCDATAセクションは、パーサーによって無視されます。

多分それがこのことをスキップさせているのです。

'<'と'>'の値を取得するには、4つの文字が一緒になっている必要があります。

<![CDATA[<ClinicalDocument>..。

于 2010-06-04T15:31:41.147 に答える