Comportamiento síncrono con el tema JMS
-
29-10-2019 - |
Pregunta
Tengo debajo del código de flujo pseudo que usa la cola para enviar el mensaje y luego escucho el tema sincrónicamente. El proveedor de JMS subyacente es TIBCO EMS.
//Send to Queue
Connection connection = createConnection(); // get the JMS connection
Session session = connection.createSession(false, javax.jms.Session.AUTO_ACKNOWLEDGE);
Queue queue = session.createQueue("sample.queue");
MessageProducer messageProducer = session.createProducer(queue);
Message message = createMessage(); //create JMS message
messageProducer.send(message);
Ahora escucho un tema usando el mismo session
objeto creado y espere hasta que haya una respuesta.
Topic topic = session.createTopic("sample.topic");
MessageConsumer messageConsumer = session.createConsumer(topic);
//wait for the reply.
Message responseMessage = messageConsumer.receive(60000);
if(responseMessage != null) {
System.out.println("Message received..");
}
El problema que me enfrento es que el objeto de mensaje sale como nulo. Probé con una herramienta de monitoreo JMS y el tema tiene algún mensaje, pero el código anterior no puede recogerlo incluso después de 60 segundos.
¿Alguna idea de qué me estoy perdiendo aquí?
No hay solución correcta
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow