有一个Java工具使用多个xsl转换将数据从crx转换为esi xml标记。

esi标记通常是无效的xml,因为esi通常是逻辑的小片段,它们不一定总是具有相同的开始和结束标记。
例如:

<esi:assign>

bunch of esi logic

<esi:vars>$(myVar)</esi:vars>


Java xsl引擎当前不允许生成无效的xml。因此,我们必须将所有esi输出包装在虚拟标签中,但这会导致一些问题。

所以我想知道是否有一种方法可以让java xsl转换引擎生成无效或格式不正确的标记?

谢谢。

最佳答案

将输出模式设置为text(而不是默认的xml)。现在,您可以生成任何类型的文本(即使看起来很像XML),但您必须自己确保<>等字符在正确的位置正确转义。

同样,由于明显的原因,诸如xsl:element之类的东西将不再起作用。

也许最好用一种真正的编程/脚本语言来编写诸如此类的东西,而不是使用XSL。

关于java - 使用xsl转换创建文档时忽略无效的xml,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5539581/

10-12 04:57