-catalog默默地失败了Saxon,如何解决?

时间:2018-03-22 09:05:46

标签: saxon

我与Saxon-HE 9.8.0.8J一起运行xml-resolver 1.2

$ java -cp saxon.jar:resolver.jar \
  net.sf.saxon.Transform \
  -t \
  -warnings:fatal \
  -catalog:this-file-is-absent.xml \
  -s:a.xml -xsl:a.xsl

我得到了:

Checking XML and XSL files...
Loading catalog: file:/this-file-is-absent.xml
Saxon-HE 9.8.0.8J from Saxonica
Java version 1.8.0_40
...

它是如何工作的?如果找不到文件,只是默默地继续?我做错了吗?

1 个答案:

答案 0 :(得分:0)

我已经通过Apache目录解析器执行了此操作,它会发出一条消息"目录不存在"在调试级别3,但默认调试级别为2,因此消息消失。

事实上,它的撒克逊将等级设置为2(当-t设置时),因此这是我们无法控制的。但要弄清楚适当的设置是不容易的。此外,我非常不愿修改解析程序的配置,因为Apache代码将配置详细信息放在静态变量中,这意味着您所做的任何更改都会影响正在运行相同的应用程序的其他无关部分Java VM。

当然,如果找不到目录导致无法找到某个源文件,那么您将获得诊断。

我希望通过多种方式改进Apache目录解析器,但我并不特别想分叉,因为我认为在更改后对其进行测试是一项重大任务。