BLOG ARTICLE CorrelationID | 1 ARTICLE FOUND

  1. 2008/09/01 Asynch Request-Reponse Model on JMS (2)

사용자 삽입 이미지
팁코 랑데뷰같은 시스템을 사용하시다가 JMS Messaging을 이용할 경우 sync방식의 처리가 애매하다고 생각하실 수 있는 데 아래와 같은 방식으로 request-reploy 방식을 구성하여 사용할 수 있습니다. 고객사 요청으로 답변해 드린 내용입니다.

/* Message Session and Message create */
m.setText(request);
m.setJMSReplyTo(replyQueue);
myId = /* generate a unique id */
m.setJMSCorrelationID(myId)

/* send the JMS message */
QueueReceiver receiver = qsession.createReceiver(replyQueue, "JMSCorrelationID = '"+myId+"'");

Then at the other end you do this:

reply.setJMSCorrelationID(request.getJMSCorrelationID());
/* send the JMS reply message */

위의 unique ID는 UUID generator 같은 것을 이용하여 고유의 아이디를 만드세요. 특정한 Web Application Server에 따라 단순히 m.getMessageID() 해서는 엔진이 메시지 ID를 다시 생성해서 correlationID로 교체해버리는 경우가 있습니다.
크리에이티브 커먼즈 라이센스
Creative Commons License
2008/09/01 16:55 2008/09/01 16:55