XPath 标头富化器
XPath 头 enrichment 定义了一个头 enricher 消息转换器,它针对消息有效负载评估 XPath 表达式,并将评估结果插入到消息头中。
以下列表显示了所有可用的配置参数:
<int-xml:xpath-header-enricher default-overwrite="true" // <1>
id="" // <2>
input-channel="" // <3>
output-channel="" // <4>
should-skip-nulls="true"> // <5>
<int:poller></int:poller> // <6>
<int-xml:header name="" // <7>
evaluation-type="STRING_RESULT" // <8>
header-type="int" // <9>
overwrite="true" // <10>
xpath-expression="" // <11>
xpath-expression-ref=""/> // <12>
</int-xml:xpath-header-enricher>
指定是否覆盖现有标题值的默认布尔值。仅对未提供自己的 'overwrite' 属性的子元素生效。如果你不设置 'default- overwrite' 属性,则指定的标题值不会覆盖任何具有相同标题名称的现有值。可选。
基础 bean 定义的 ID。可选。
此端点的接收消息通道。可选。
丰富后消息发送到的通道。可选。
指定是否应跳过诸如从表达式求值返回的 null 值。默认值是
true
。如果 null 值应该触发删除相应的头,则将其设置为false
。可选。与头信息丰富器一起使用的轮询器。可选。
要丰富头信息的名称。必填。
期望从 XPath 评估获得的结果类型。如果你没有设置
header-type
属性,这就是头信息值的类型。允许的值有:BOOLEAN_RESULT
、STRING_RESULT
、NUMBER_RESULT
、NODE_RESULT
和NODE_LIST_RESULT
。如果不设置,默认内部为XPathEvaluationType.STRING_RESULT
。可选。头信息值类型的完全限定类名。XPath 评估的结果通过
ConversionService
转换为此类型。这允许例如将NUMBER_RESULT
(双精度数)转换为Integer
。类型可以声明为基本类型(如int
),但结果始终是等效的包装类(如Integer
)。与有效负载类型转换中讨论的相同的集成ConversionService
用于转换,因此通过向服务添加自定义转换器可以支持转换为自定义类型。可选。布尔值,指示如果输入
Message
中已经存在同名的头信息值时,此头信息值是否应覆盖现有的头信息值。作为
String
的 XPath 表达式。你必须设置此属性或xpath-expression-ref
,但不能同时设置两者。XPath 表达式引用。你必须设置此属性或
xpath-expression
,但不能同时设置两者。