我需要在文件中搜索字符串,我已经使用了下面的java代码搜索字符串,正如我预期的那样工作,
.when(body().convertToString().contains("mytext"))
如果我需要更改搜索字符串,我必须再次重新编码,所以我尝试从属性文件中加载搜索字符串,如下所示
我在属性文件中定义了findme='mytext'
,但不会搜索带有“properties:{{findme}}的字符串”
.when(body().convertToString().contains("properties:{{findme}}"))
答案 0 :(得分:1)
我认为应该是:
.when(body().convertToString().contains("{{findme}}"))
来自Apache Camel documentation on properties:
<强>语法强>
使用Camel的属性占位符的语法是使用
{{key}}
示例{{file.uri}}
其中file.uri是属性键。您可以使用 例如,端点URI的部分中的属性占位符 您可以在URI中使用占位符作为参数。
答案 1 :(得分:0)
我不认为contains
会执行预期的simple
表达式。您应该明确包含值。
when(body().convertToString().contains(exchangeProperty("findme")))