使用Spring Expression Language(SpEL)访问嵌套标头

时间:2019-04-19 02:19:21

标签: apache-camel spring-el

我的骆驼路线需要从入站交换对象访问kafka.HEADERS标头。标头之一是标头列表,其中值类型为RecordHeader。我想访问一个RecordHeader(例如leadEquipmentId)并将其与字符串进行比较。请有人可以提出建议吗?该语法不起作用:

<spel>#{#{request.headers['kafka.HEADERS']}['leadEquipmentId']} == 'SomeEquipmentId'</spel>

enter image description here

1 个答案:

答案 0 :(得分:2)

RecordHeaders不是Map,所以您不能使用MapAccessor['leadEquipmentId'])。

尝试

#{new String(request.headers['kafka.HEADERS'].lastHeader('leadEquipmentId').value())} == 'SomeEquipmentId'