378.2. 选项


XSLT 组件支持 9 个选项,如下所列。

名称描述默认值类型

xmlConverter (advanced)

使用 org.apache.camel.converter.jaxp.XmlConverter 的自定义实现

 

XmlConverter

uriResolverFactory (advanced)

使用自定义 UriResolver,它依赖于动态端点资源 URI。不应与 'uriResolver' 选项一同使用。

 

XsltUriResolverFactory

uriResolver (advanced)

使用自定义 UriResolver。不应与 'uriResolverFactory' 选项一同使用。

 

URIResolver

contentCache (producer)

加载时的资源内容(样式表文件)的缓存。如果设置为 false Camel,将在每次消息处理时重新加载风格表文件。这适用于开发。可以使用 clearCachedStylesheet 操作,强制缓存的风格表通过 JMX 在运行时重新加载。

true

布尔值

saxon (producer)

是否使用 Saxon 作为 transformerFactoryClass。如果启用,则类 net.sf.saxon.TransformerFactoryImpl。您需要将 Saxon 添加到 classpath 中。

false

布尔值

saxonExtensionFunctions (advanced)

允许您使用自定义 net.sf.saxon.lib.ExtensionFunctionDefinition。您需要将 camel-saxon 添加到 classpath 中。该函数在 registry 中查找,您可以在其中用逗号分隔要查找的多个值。

 

字符串

saxonConfiguration (advanced)

使用自定义 Saxon 配置

 

对象

saxonConfiguration Properties (advanced)

设置自定义 Saxon 配置属性

 

Map

resolveProperty Placeholders (advanced)

启动时组件是否应解析自身上的属性占位符。只有属于 String 类型的属性才能使用属性占位符。

true

布尔值

XSLT 端点使用 URI 语法进行配置:

xslt:resourceUri

使用以下路径和查询参数:

378.2.1. 路径参数(1 参数):

名称描述默认值类型

resourceUri

必需的模板的路径。默认 URIResolver 支持以下内容。您可以为前缀:classpath, file, http, ref, 或 bean. classpath, file 和 http 使用这些协议加载资源(classpath 为 default)。ref 将查询 registry 中的资源。bean 将调用要用作资源的 bean 的方法。对于 bean,您可以在点后指定方法名称,如 bean:myBean.myMethod

 

字符串

378.2.2. 查询参数(17 参数):

名称描述默认值类型

allowStAX (producer)

是否允许使用 StAX 作为 javax.xml.transform.Source。

true

布尔值

contentCache (producer)

加载时的资源内容(样式表文件)的缓存。如果设置为 false Camel,将在每次消息处理时重新加载风格表文件。这适用于开发。可以使用 clearCachedStylesheet 操作,强制缓存的风格表通过 JMX 在运行时重新加载。

true

布尔值

deleteOutputFile (producer)

如果您有 output=file,则此选项指定在处理 Exchange 时是否应删除输出文件。例如,假设输出文件是一个临时文件,那么在使用后,最好将其删除。

false

布尔值

failOnNullBody (producer)

如果输入正文为 null,是否抛出异常。

true

布尔值

output (producer)

用于指定要使用的输出类型的选项。可能的值有:string, bytes, DOM, file。前三个选项都基于内存,其中文件直接流传输到 java.io.File。对于文件,您必须使用密钥 Exchange.XSLT_FILE_NAME (也是 CamelXsltFileName)在 IN 标头中指定文件名。另外,任何前需要创建文件名的路径,否则会在运行时抛出异常。

字符串

XsltOutput

saxon (producer)

是否使用 Saxon 作为 transformerFactoryClass。如果启用,则类 net.sf.saxon.TransformerFactoryImpl。您需要将 Saxon 添加到 classpath 中。

false

布尔值

transformerCacheSize (producer)

已缓存用于重复使用的 javax.xml.transform.Transformer 对象数量,以避免调用 Template.newTransformer ()。

0

int

converter (advanced)

使用 org.apache.camel.converter.jaxp.XmlConverter 的自定义实现

 

XmlConverter

entityResolver (advanced)

使用自定义 org.xml.sax.EntityResolver 和 javax.xml.transform.sax.SAXSource。

 

EntityResolver

errorListener (advanced)

允许配置为使用自定义 javax.xml.transform.ErrorListener。在执行此操作时,需要注意,默认错误监听程序捕获任何错误或致命错误,并将 Exchange 的信息存储为不使用属性。因此,仅将这个选项用于特殊用例。

 

ErrorListener

resultHandlerFactory (advanced)

允许您使用自定义 org.apache.camel.builder.xml.ResultHandlerFactory,它能够使用自定义 org.apache.camel.builder.xml.ResultHandler 类型。

 

ResultHandlerFactory

saxonConfiguration (advanced)

使用自定义 Saxon 配置

 

对象

saxonExtensionFunctions (advanced)

允许您使用自定义 net.sf.saxon.lib.ExtensionFunctionDefinition。您需要将 camel-saxon 添加到 classpath 中。该函数在 registry 中查找,您可以在其中用逗号分隔要查找的多个值。

 

字符串

同步 (advanced)

设置是否应严格使用同步处理,或者 Camel 允许使用异步处理(如果受支持)。

false

布尔值

transformerFactory (advanced)

使用自定义 XSLT transformer 工厂

 

TransformerFactory

transformerFactoryClass (advanced)

要使用自定义 XSLT 转换器工厂,请指定为 FQN 类名称

 

字符串

uriResolver (advanced)

使用自定义 javax.xml.transform.URIResolver

 

URIResolver

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.