2012-01-25 3 views
0

ActiveMQ MessageListener를 만들고 Spring을 사용하여 구성하려고합니다. Tomcat에서 리스너를 호스팅합니다. 이 흐름이 끝나면 나도 몰라? 그렇다면 어떻게? 클라이언트 ---> Tomcat ---> ActiveMQ ----> 서비스 (Java 응용 프로그램) ----> ActiveMQ ---> Tomcat ---> 클라이언트Tomcat과 조합 된 ActiveMq

고맙습니다!

+0

이 질문을 참조하십시오. 나는 똑같은 것이 필요하다. http://stackoverflow.com/questions/19706788/jersey-rest-web-service-with-activemq-middleware-integration 시간을내어 주셔서 감사합니다. – Kumar

+0

스프링 프레임 워크가 아닌 Jersey Rest 서비스 만 사용하고 있습니다. 모든 소득 요청을 대기열에 넣은 다음 자원으로 전달하고 그 결과를 얻어야합니다. 가장 중요한 점은 모든 http 요청을 제대로 처리한다는 것입니다. 감사합니다 – Kumar

답변

1

예 가능합니다. DefaultMessageListenerContainer을 살펴보십시오.

<bean id="connectionFactory" class="org.apache.activemq.ActiveMQConnectionFactory"> 
    <property name="brokerURL" ref="brokerUrl" /> 
</bean> 

<bean id="container" 
    class="org.springframework.jms.listener.DefaultMessageListenerContainer"> 
    <property name="connectionFactory" ref="connectionFactory" /> 
    <property name="destination" ref="queue" /> 
    <property name="messageListener" ref="myMessageListener" /> 
    <property name="cacheLevelName" value="CACHE_CONSUMER" /> 
</bean> 

여기서 myMessageListener는 MessageListener에 대한 참조입니다. 흐름이 어떻게 보이는지에 대한 질문에 대해서는

, 그것은 다음과 같습니다

  • JMS 클라이언트가 ActiveMQ를 브로커가 메시지를 수신
  • 의 ActiveMQ 브로커의 큐에 메시지를 보내고에 전달합니다 그 대기열을 듣는 소비자 중 하나,이 경우에는 Tomcat 내의 MessageListener
+0

데이터가 클라이언트의 세션을 수정하기 위해 응답 할 수 있는지 확인하십시오. 좀 더 자세한 정보를 얻으려면 – anhdv

+0

응답을 올바른 클라이언트 세션으로 보내려면 JMS 대기열을 보낼 때 임시 대기열을 설정하고 클라이언트 응용 프로그램에서 replyTo로 설정해야합니다. –

+0

클라이언트는 웹 브라우저를 사용하여 데이터를 전송합니다 -> ActiveMQ-> Service-> ActiveMq-> Client? – anhdv

0

예. 이 데이터를 해결 한 다음 ActiveMq에 결과를 보내고 결과를 클라이언트에게 보여주는 서비스가 있습니다.

+0

Anh 제발 이것보십시오. 시간 내 줘서 고마워. http://stackoverflow.com/questions/19706788/jersey-rest-web-service-with-activemq-middleware-integration – Kumar