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

使用PE: Extension元素的Saxon配置文件在Saxon-HE中不可用

冯通
2023-03-14

我试图使用saxon-sql-10.2.jar与saxon-pe-10.2.jar.阅读了Saxon留档(说明,示例),我发现我应该使用我使用氧气模板创建的配置文件:

<configuration edition="PE" xmlns="http://saxon.sf.net/ns/configuration" label="Some label">

    <xslt recoveryPolicy="recoverWithWarnings" schemaAware="false" staticErrorListener=""
        staticUriResolver="" styleParser="" version="3.0" versionWarning="false">
      
        <extensionElement namespace="http://saxon.sf.net/sql"
            factory="net.sf.saxon.option.sql.SQLElementFactory"/>
    </xslt>
</configuration>

在cmd中,我有:

java -cp "%SAXON_HOME%\saxon-pe-10.2.jar;%SAXON_HOME%\saxon-sql-10.2.jar;" net.sf.saxon.Transform -s:test.xml -xsl:DB.xsl -o:out.xml -config:config.xml -t

但当这运行时,我得到的信息是:

Warning on line 19 column 69 of config.xml:
   Extension elements are not available in Saxon-HE

当我使用PE时,为什么会收到此消息?我已经使用Saxon查询验证了我的许可证文件是否被正确读取,并尝试了配置文件,无论是否指定许可证文件位置。我所有与Saxon相关的文件都在c:\saxon中,它的环境变量%SAXON_HOME%。我还尝试使用-classpath而不是-cp并将许可证文件添加到两者中,但这没有帮助。我做错了什么?

共有1个答案

鲜于峰
2023-03-14

我复制了这个,这是bug。在

https://saxonica.plan.io/issues/4849

我想不出一个方便的解决方法,所以与我们联系,我们会给你一个临时升级到Saxon-EE,这样你就可以取得进展。

 类似资料:
  • 我目前使用Saxon9开源版本,扩展用Java编写。我正在尝试迁移到SaxonHE,我已经阅读了这里显示的留档和示例。 Java扩展功能:全界面 和 Saxon配置文件 当我尝试执行我的XSLT转换时,当它遇到我的一个外部java函数时,我会遇到这样的错误。 这就是我到目前为止所做的。 我的java扩展函数是这样写的。 我已经创建了一个撒克逊配置文件,看起来像这样。我的例子看起来有点不同于撒克逊网

  • 当我运行我的xsl样式表时,我需要知道是否存在一些文件。因为xslt没有本地方法来测试文件是否存在(ASFAIK),所以我想用javascript来做这件事。通常我使用saxon 9 HE,但是一些同事告诉我HE版本不支持javascript函数。有没有一种方法可以用saxon 9 HE执行java脚本函数? 我尝试过这个例子:如何在xslt中包含javaScript文件,但oxygen给了我一个

  • 我需要使用xquery解码转义的XML,也就是说,我有一个类似

  • 问题内容: 我在Mac OS X和Saxon-HE 9.3.0.5上使用Java SE 6。ServiceLoader无法找到的Saxon实现。 查找过程第3点中的状态方法的javadoc,用于本地化以下实现: 要求类加载器在资源目录META-INF / services中提供与javax.xml.xpath.XPathFactory匹配的服务提供者配置文件。有关文件格式和解析规则,请参见JAR文

  • 我想在XSLT 2.0版本中将Map对象作为参数传递,并且我想使用Saxon-HE在XSLT 2.0文件下检索Map对象数据。 我谷歌了很多,发现在XSLT中检索哈希图值 链接完全符合我的需要,但我得到例外,如 在{map: get($mapData,'1')}中的静态错误,在transformer.xslt: XPST0017的第23行第94列的xsl:变量/@select中的表达式中:找不到名

  • 问题内容: 我需要使用python处理XSLT,目前我正在使用仅支持XSLT 1的lxml,现在我需要处理XSLT 2,有没有办法在Python中使用saxon XSLT处理器? 问题答案: 有两种可能的方法: 设置一个接受转换请求的HTTP服务,并通过从Java调用Saxon来实现它们;然后您可以通过HTTP通过Python发送转换请求 使用Saxon / C产品 (当前在预发行版中可用) :此