我有以下XML,它包含两个属性和一个值。包含内容的值包含在字段标记中。
<field key="title" primitive="String">
<![CDATA[
This is the problem that I'm trying to solve.
]]>
</field>
在我解析它之后,当我在freemarker模板中输入$ {item}时,我得到了这个。我可以使用item。@ key和item。@ primitive获取属性。不幸的是,我没有获得价值或内容。我的替代解决方案是使用substring从value数组中获取内容。我确定freemarker有办法获得这类数据。
field[attributes={key=title, primitive=String}; value=[This is the problem that I'm trying to solve.]]
答案 0 :(得分:0)
假设item
拥有field
XML元素,${item}
应该有效。您显示的输出对我来说并不熟悉。所以我想那里的XML包装有些奇怪,就像你正在使用一些遗留的XML包装器一样。您应该使用添加到数据模型的W3C DOM Element
或Document
,或使用freemarker.ext.dom.NodeModel
明确包装。
顺便说一下,如果你填写这样的表格,你可以尝试http://freemarker-online.kenshoo.com/它确实应该有效:
模板:
<#assign item=doc.field>
${item}
数据模型:
doc=
<field key="title" primitive="String">
<![CDATA[
This is the problem that I'm trying to solve.
]]>
</field>