我正在使用apache骆驼路线。我在其中编写了一个套接字,其套接字参数为netty的编码器和解码器。
我将输入作为字符串提供,我想获得两个字符串作为输出。编码器和解码器正在产生两个输出,但是在路线上,我只获得第一个输出,而不是第二个。
有没有办法在apache骆驼路线中为单个输入获取多个输出?
这是我的路线:
<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&encoder=#i8583Encoder&decoder=#i8583Decoder"/>
</route>
</post>
套接字:
<route id="i8583SocketService">
<from
uri="netty4:tcp://localhost:5030?sync=true&encoder=#iEncoder&decoder=#iDecoder" />
<to
uri="log:i8583SocketService?level=INFO&showAll=true&multiline=true" />
</route>
答案 0 :(得分:0)
我不太了解您的问题,但是如果您发送1条消息到骆驼路线,并且想要从中获得2条消息,则通常必须使用Splitter EIP将原始邮件分为多个部分,并将这些部分作为单独的邮件进行路由。