Любая помощь здесь будет принята с благодарностью:)
У меня есть этот код в моем файле Camel route XML file:
<choice>
<when>
<simple>${header.CamelHttpQuery} not contains '%'</simple>
<process ref="firstResponseTransformer"/>
</when>
<otherwise>
<process ref="secondResponseTransformer"/>
</otherwise>
</choice>
(я также пытался !contains
)
Как видите, я хочу go для разных классов, чтобы подготовить мой ответ в зависимости от условия.
Я могу видеть, используя точку останова в ударе процессора, который был ранее в маршруте, что значение exchange> in> headers> CamelHttpQuery равно ""
, но независимо от того, должно ли условие быть истинным, всегда должен быть выбран преобразователь в теге else.
Простое утверждение выглядит правильно мне на основе документов Camel, и у меня есть другие простые утверждения в базе кода, которые, кажется, работают нормально.
У кого-нибудь есть идеи, почему простое не работает, когда оно должно быть правдой?
Довольно застрял. Заранее спасибо.
Версия верблюда 2.12.4
Редактировать: Я думаю, это потому, что мне нужно конвертировать header.CamelHttpQuery
из символов в строки, кто-нибудь знает, как сделать это в Simple?