375.6. 设置结果类型

XPath 表达式将使用本地 XML 对象(如 org.w3c.dom.NodeList )返回结果类型。但很多时候,您希望结果类型是一个字符串。要做到这一点,您必须指示 XPath 要使用的结果类型。

在 Java DSL 中:

xpath("/foo:person/@id", String.class)

在 Spring DSL 中,您可以使用 resultType 属性提供完全限定的 classname:

<xpath resultType="java.lang.String">/foo:person/@id</xpath>

在 @XPath:
中作为 Camel 2.1 提供

@XPath(value = "concat('foo-',//order/name/)", resultType = String.class) String name)

如果我们使用 xpath 功能将顺序名称加前缀为 foo-。在本例中,我们必须指定,我们需要一个字符串作为结果类型,因此 concat 函数可以正常工作。