Timeout no JMS?

Ola,

Nunca trabalhei com JMS (mas mexi com filas em .NET)

Preciso fazer uma aplicacao que se comunica com um cliente MQ, isso eh, escreve a mensagem na fila de entrada e depois le a resposta na fila de saida. O problema eh que pela regra de negocios eu tenho que lancar um ERRO caso a resposta nao venha em X segundos (sei la, 180 seg…por exemplo).

Sendo essencialmente assincrono eu consigo fazer isso de forma simples, digo, pelo JMS mesmo? Ou tenho que usar algo mais trabalhoso, como fazer tudo na mao e colocar um watchDog na jogada?

Alguem poderia me sugerir algo?

Obrigado

Bom, tb estou iniciando em JMS … mas sei que o método receive() da classe MessageConsumer possui uma versão onde vc passa um long de milisegundos para ele … após o tempo ele segue em frente … porém isso num bean de sessão … não no onMessage() de um MDB …

Att.
Fernando.

A solução que eu te passaria seria implementar ou um TimerTask ou uma Thread com sleep e todos os mecanismos necessários para o sincronismo, que a cada 180s verificasse se chegou a resposta (ou tempos mais curtos e em 180 segundos estourasse).

Desta maneira, se estourasse o limite, você lançaria uma exceção.

Agora, talvez alguém tenha uma solução melhor.

[]ssss