骆驼 属性 占位符布尔值

Camel property placeholder boolean

我的 属性 文件中有一个 属性:

glob.dev_environment=true

glob.dev_environment=false

现在我尝试了以下方法:

<route id="emailMonitor" autoStartup="${!glob.dev_environment}">
    <from uri="{{imapURL}}" />
    <bean ref="attachmentProcessor"/>
</route>  

<route id="emailMonitor" autoStartup="${not glob.dev_environment}">
    <from uri="{{imapURL}}" />
    <bean ref="attachmentProcessor"/>
</route>  

<route id="emailMonitor" autoStartup="{{!glob.dev_environment}}">
    <from uri="{{imapURL}}" />
    <bean ref="attachmentProcessor"/>
</route>  

<route id="emailMonitor" autoStartup="{{not glob.dev_environment}}">
    <from uri="{{imapURL}}" />
    <bean ref="attachmentProcessor"/>
</route>  

<route id="emailMonitor" autoStartup="{{glob.dev_environment == 'false'}}">
    <from uri="{{imapURL}}" />
    <bean ref="attachmentProcessor"/>
</route>  

<route id="emailMonitor" prop:autoStartup="!glob.dev_environment">
    <from uri="{{imapURL}}" />
    <bean ref="attachmentProcessor"/>
</route>  

我在这里有点疯狂。我如何得到它来评估 XML DSL 中的布尔值? 是的,我读过 this section, and this section。 我打赌更改为 glob.prod_environment 会使这更容易,因为 XML DSL 可能无法处理布尔运算。我对吗?是这样吗?

根据上面的评论...

Camel 属性 取反值仅适用于 v3.x。 prop: prefix 似乎在 v2.x 中也不起作用。

解决方法是使用不需要求反的 属性。