当前位置: 首页 > 知识库问答 >
问题:

java中的XSLT,而不使用JRE的XML实用程序

杭柏
2023-03-14

看起来JDK提供了自己的apache Xalan阴影版本。

我在使用XSLT生成XML时发现了一个bug(bug是在某些cdata节中添加了一个新行和缩进)。这在未发布的JDK12中得到了修复。我希望避免这种情况,即我必须等待oracle修复问题,同时升级所使用的JRE。

我希望能够依赖xalan或其他支持XSLT的东西,而不依赖于JRE

  1. oracle是否为其独立于Apache的JRE维护自己的xalan版本?
  2. 为什么自2014年7月以来Maven上没有更新xalan?
  3. 依赖xalan会导致各种问题吗?我确实在Java/Maven中看到了如何处理“Xerces地狱”?排除了XML-API,以避免一些问题。
  4. 使用JVM不太可能使用的不同的XML库会更好吗?什么是值得研究的图书馆。

共有1个答案

羊舌庆
2023-03-14

我尽力回答(但你的一些问题需要内部知识):

>

  • 据我所知,Xerces和Xalan的JRE版本是Apache Xerces和Xalan的修改版本,但没有经过很大的修改,并且需要在Apache版本上移植bug修复。

    Xalan尚未修改,因为没有人在处理它。它最初的赞助商是IBM和Sun(它部分来源于IBM的LotusXSL,部分来源于Sun的XSLTC)。Sun的开发人员在甲骨文收购后离开;IBM将其投资转移到商业Websphere XSLT2.0处理器和Datapower引擎上。因此,Xalan仍然是XSLT1.0处理器,这意味着规范在19年中没有改变,代码也变得相应稳定,因此几乎不需要修复bug。需要比Xalan提供的功能更多的功能的用户通常会转移到Saxon,除非他们的预算能够让Websphere或Datapower负担得起。

    (我对此很感兴趣)转移到Saxon可以使您获得XSLT2.0和XSLT3.0的所有功能和生产力优势;产品持续开发维护,支持良好;在某些情况下,您可能会看到性能的显著提高;这些年来,在诊断、可配置性和仪器仪表等领域已经有了很多渐进式的改进。但是这些好处与JVM中是否也使用了这些代码无关。

  •  类似资料:
    • 问题内容: 我从这里获得了XSLT:http : //andrewjwelch.com/code/xslt/csv/csv-to- xml_v2.html 并将CSV文件转换为XML文档。在命令行上与以下命令一起使用时,它将执行此操作: java -jar saxon9he.jar -xsl:csv-to-xml.csv -it:main -o:output.xml 现在,问题变成了: 如何在Ja

    • 主要是从这个问题:XSLT:CSV(或平面文件,或纯文本)到XML 我这里有一个XSLT:http://andrewjwelch.com/code/xslt/csv/csv-to-xml_v2.html 它将CSV文件转换为XML文档。当与命令行上的以下命令一起使用时,它会这样做: java-jar saxon9he。jar-xsl:csv到xml。csv-it:main-o:output。xml

    • 问题内容: 我们有一个简单的实用程序应用程序,可读取JRE中使用的所有时区数据并将其全部显示在简单表中。我们需要为即将发布的产品发行版使用JRE的较旧版本(6_24)(显然是由于其他问题),但是我们还需要在该发行版中包括较新的时区更新(否则将包含在6_29中) )。我们已经打包了将要安装的私有JRE,所以使用TZUpdater工具将时区更新到该私有JRE 中不是问题- 问题是正在读取/验证哪个tz

    • 问题内容: 我发现自己一次又一次地写同样的冗长的DOM操作代码: 现在,我不想一起切换架构,即我不想使用JDOM,JAXB或其他任何东西。只是Java的。原因是 这是关于一个古老而又大的遗留系统 XML已在许多地方使用,并且XSLT进行了多次转换以获得XML,HTML和PDF输出 我只是在寻找方便,没有什么大变化。 我只是想知道是否有一个不错的包装库(例如,使用apache commons或goo

    • 我试图使用xslt将xml中的特殊字符转换为其编码形式。 例子: 等等下面给出了我使用的代码 XML结构是 输出也应该包含xml节点,这就是为什么我在文本区域中使用xsl:拷贝而不是xsl: value-of。因为xsl: value-of Select="name"将只输出这是一个文件 我正在使用XSLT版本1。o 我想要的输出是

    • 问题内容: 我想使用xsl文件转换一些xml并以某种方式输出结果(我使用的是Android Api Level 8)。 我当前的活动看起来像这样,但是转换器保持为空。LogCat引发一个with ,表示xml格式不正确,但是我确定它是正确的。 我在LogCat中发现了一条提示,提示在上述错误消息之前。 我究竟做错了什么? 这是要转换的xml文件(source.xml) 这是对应的xsl(produ