骆驼:默认使用Saxon

时间:2014-04-11 14:28:46

标签: apache-camel xslt-2.0 saxon fuseesb jbossfuse

有没有办法告诉Camel默认使用Saxon库,所以我不需要在每次XLST转换中都指定它? E.g:

.to("xslt:my-file.xsl?transformerFactoryClass=net.sf.saxon.TransformerFactoryImpl")

在每个端点中指定它会降低代码的可读性。

我已经看到了关于设置环境属性的建议(尽管在其他一些情况下):

javax.xml.transform.TransformerFactory=net.sf.saxon.TransformerFactoryImpl

这可能会以某种方式设置在单个驼峰上下文中吗?

P.S。我使用的是Camel 2.10,所以遗憾的是saxon参数建议还不是一个选项......

2 个答案:

答案 0 :(得分:4)

根据你可以使用的documentation

.to("xslt:my-file.xsl?saxon=true")

更具可读性

答案 1 :(得分:2)

系统属性设置适用于整个JVM,这不是容器设置的好方法。

你可以扩展XsltComponent来为camel-2.11.x设置你的transformerFactoryClass,或者你可以添加一个包含transformerFactoryClass选项的常量。