2015-10-18 2 views
0

Я использую функцию spring-integration, у меня есть требование, чтобы на основе переменной системной среды я хотел переключить сообщение на любой из трансформаторов.Условный трансформатор Маршрутизация на основе свойства среды в весенней интеграции xml

Я попытался с вопросом ответил здесь: Condition recipient-list-router
но получатель-список-маршрутизатор решение будет применимо только, если я хочу, чтобы направить на различные каналы, но здесь проблема заключается в том, что канал сконфигурирован для обоего трансформаторов тот же также оба трансформатора имеют тот же входной канал только на основе свойства среды Я хочу направить их на другой выходной канал.
Как

<int:transformer id="messageTransformer" ref="messageTransformerBean" 
    input-channel="validMessageChannel" method="transform" output-channel="Channel-A" 
    /> 

так что если environement переменная истинно, то выход этого преобразуется сообщение в канал-А в противном случае канал-B

<int:transformer id="messageTransformer" ref="messageTransformerBean" 
    input-channel="validMessageChannel" method="transform" output-channel="Channel -B" /> 

Есть ли способ достичь этого, пожалуйста, дайте мне знать.

ответ

0

Изменение выходных каналов обоих трансформаторов routingChannel затем добавить маршрутизатор, который имеет routingChannel для своих input-channel и маршрутов к channel-A или -B в зависимости от вашего состояния.