在 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'
所以我想,将您的 XPath 表达式更改为上面的 XPath 会起作用。
我有 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'
所以我想,将您的 XPath 表达式更改为上面的 XPath 会起作用。