у меня есть несколько маршрутов Apache Camel с большим количеством опций, как этот:Apache Camel избежать дублирования параметров через подобные маршруты XML
<from uri="sftp://[email protected]:22/path?
password=vvvvv;delay=3000&streamDownload=true&
delete=true&idempotent=true&idempotentRepository=#jpaStore&
inProgressRepository=#jpaStore"/>
Это не так уж плохо, но у меня есть шесть других маршрутов с теми же параметрами но разные пути. Я хотел бы, чтобы поместить все опции в постоянной, чтобы избежать дублирования:
<from uri="sftp://[email protected]:22/path?OPTIONS"/>
я мог бы быть в состоянии использовать Camel EL для достижения этой цели, но ни один из примеров не показывать, и мои попытки угадать синтаксис Арен Не работаем.
создать Spring бина, как это:
<bean id="myoptions" class="java.lang.String">
<constructor-arg value="allmyoptions"/>
</bean>
И попробуйте обратиться к нему, как это:
<from uri="sftp://[email protected]:22/path?${myoptions}"/>
Но я получаю сообщение об ошибке:
There are 1 parameters that couldn't be set on the endpoint. Check the uri if the parameters are spelt correctly and that they are properties of the endpoint. Unknown parameters=[{${myoptions}=}]
Этот вопрос , Simple Expression in apache-camel uri, пытается что-то подобное, но они используют Java DSL, и мои маршруты настроены в XML.
Кто-нибудь знает хороший способ избежать дублирования всех этих вариантов по маршрутам?