weblogic jms와 스프링 통합을 사용하고 있습니다. 내 논리는 json 객체를 jms 대기열에 넣고 대기열에서 채널로 가져와 유효성을 검사하고 특정 필드를 기반으로 경로를 지정하는 것입니다. 오류가 있으면 수정하여 대기열에 다시 넣습니다. 두 가지 문제가 있습니다. 1. 메시지가 객체로 소비되면 객체를 weblogic의 관리 콘솔에서 대기중인 것으로 볼 수 있습니다. 2. 유효성 검사를 수정 한 후 수정 된 객체를 대기열에 넣으면 대기열에서 원래 객체를 가져옵니다.jms, weblogic과의 스프링 통합, 메시지가 채널로 소비 된 후에도 대기열에 나타납니다.
<int-jms:outbound-channel-adapter id="jmsOutbound"
channel="requestChannel" connection-factory="queueConnectionFactory"
destination="inputQueue" />
<int-jms:message-driven-channel-adapter
id="jmsInbound" connection-factory="queueConnectionFactory"
destination="inputQueue" channel="routingChannel" />
if (message.getHeaders().get("documentType").equals("sec"))
routingChannels.add(outboundSecChannel);
else if (message.getHeaders().get("documentType").equals("unds"))
routingChannels.add(outboundFChannel);
else if (message.getHeaders().get("documentType").equals("CH"))
routingChannels.add(outboundAChannel);
else{
routingChannels.add(errorChannel);
}
당신의 도움에 대한
감사 라우팅을 사용하여 채널에 넣어.
감사합니다. @Artem, 내 도움이되었습니다. 수정 된 메시지를 새 메시지로 저장합니다. – sreenivas