spring boot верблюд 3 camel-endpointdsl против строк uri несовместимость из-за двойного sla sh // - PullRequest
0 голосов
/ 29 апреля 2020

Мы мигрируем с верблюда 2.x на верблюда 3.x

Я преобразовываю маршруты, написанные с использованием строк uri, из этих форматов определения маршрутов

//xml routes
<route>
    <from uri="activemq:queue:inputqueue?disableReplyTo=true" />
    <to uri="direct:loadConfiguration" />
</route>


//java routes
from("direct:loadConfiguration"))
.bean(myBean, "loadAllConfiguration(${body})");

в формат конечной точки-dsl ниже :

from(activemq("loadConfiguration").disableReplyTo(true))
.to(direct("loadConfiguration"));

from(direct("loadConfiguration"))
.bean(myBean, "loadAllConfiguration(${body})");

Дело в том, что форматы URI регистрируют маршруты следующим образом:

org.apache.camel.impl.engine.AbstractCamelContext - Route: route4 started and consuming from: activemq://queue:inputqueue?disableReplyTo=true
org.apache.camel.impl.engine.AbstractCamelContext - Route: route5 started and consuming from: direct://loadConfiguration

Но новый верблюжий формат dsl регистрирует маршруты следующим образом (без //):

org.apache.camel.impl.engine.AbstractCamelContext - Route: route4 started and consuming from: activemq:queue:inputqueue?disableReplyTo=true
org.apache.camel.impl.engine.AbstractCamelContext - Route: route5 started and consuming from: direct:loadConfiguration

Проблема в том, что маршруты, которые регистрируются с двойным sla * sh, добавленным к компоненту (поведение URI), не сопоставляются с маршрутами, зарегистрированными без двойного sla * sh (новое поведение endpoint-dsl).

И мне нужно преобразовать все маршруты, чтобы использовать либо URI, либо endpoint-dsl. В противном случае я получаю ошибки в сообщениях, говорящих, что для маршрута direct://loadConfiguration, например, нет потребителей ... потому что from(direct("loadConfiguration")) определяется с помощью dsl, и он регистрируется как direct:loadConfiguration.

Есть ли параметр конфигурации для заставить верблюда не добавлять // к компонентам при использовании URI или заставить верблюда игнорировать его //?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...