Могу ли я получить несколько выходов, используя Apache Camel? - PullRequest
0 голосов
/ 24 октября 2018

Я использую Apache Camel.В котором я написал сокет с параметрами в качестве кодировщика и декодера netty.

Я даю ввод в виде строки и хочу получить две строки в качестве вывода.Кодировщик и декодер выдают два выхода, но на маршруте я получаю первый вывод, а не второй.

Можно ли получить несколько выходов для одного входа в Apache Camel Route?

Вот мой маршрут:

<post uri="/testaddstring">
     <route id="testaddstring">
            <script>
               <groovy>
                  <![CDATA[
                    String originalFileContent =(String)exchange.getIn().getBody(String.class);
                                    exchange.getIn().setBody(originalFileContent)
                                    System.out.println("in test add");
                                ]]>
                                </groovy>
                            </script>
                             <to uri="netty4:tcp://localhost:5030?sync=true&amp;encoder=#i8583Encoder&amp;decoder=#i8583Decoder"/> 
                        </route>
                    </post>

Розетка:

<route id="i8583SocketService">
    <from
        uri="netty4:tcp://localhost:5030?sync=true&amp;encoder=#iEncoder&amp;decoder=#iDecoder" />
    <to
        uri="log:i8583SocketService?level=INFO&amp;showAll=true&amp;multiline=true" />      
</route>

1 Ответ

0 голосов
/ 25 октября 2018

Я не до конца понимаю ваш вопрос, но если вы отправляете 1 сообщение на маршрут Camel и хотите получить от него 2 сообщения , вам обычно приходится использовать Splitter EIP , который разбивает ваше исходное сообщение на несколько частей и маршрутизирует эти части как отдельные сообщения.

...