有没有一种方法可以告诉Camel默认使用Saxon库,这样我就不需要在每次XLST转换中指定它了?例如:
.to("xslt:my-file.xsl?transformerFactoryClass=net.sf.saxon.TransformerFactoryImpl")
在每个端点中指定它会降低代码的可读性。
我看到了关于设置环境属性的建议(尽管在其他一些上下文中):
javax.xml.transform.TransformerFactory=net.sf.saxon.TransformerFactoryImpl
这是否可能以某种方式设置在单个骆驼上下文中?
附言:我使用的是Camel 2.10,所以不幸的是,saxon
参数建议还不是一个选项。。。
根据您可以使用的文档:
.to("xslt:my-file.xsl?saxon=true")
可读性更强
系统属性设置适用于整个JVM,这不是容器设置的好方法。
您可以像camel-11.x那样扩展XsltComponent来为您设置transformerFactoryClass,也可以只添加一个包含transformerFactoryClass选项的常量。