在 Apache Camel 中将 XPath 表达式转换为布尔值

cast XPath Expression to Boolean in Apache Camel

我有 xml 个标记:<ns4:flag>false</ns4:flag>。我想读取这个标志并将其值设置为 FLAG 属性:

.setProperty( FLAG, xpath("//*[local-name()='flag']/text()", Boolean.class))

使用上面的代码我得到 'true' 值而不是 'false'。还尝试了表达式中的 resultType(Boolean.class)boolean() xpath 函数,但没有成功。我有什么想法可以做这个演员表吗?

在XPath中,当文本内容等于字符串值"true"时,下面的表达式将return布尔值true,而return布尔值false否则:

//*[local-name()='flag']/text() = 'true'

xpathteseter.com demo

所以我想,将您的 XPath 表达式更改为上面的 XPath 会起作用。