]
Adrian Brock closed JBAS-3821.
------------------------------
Resolution: Done
Uncatch JMSException in receive() methods in SpyMessageConsumer.java
--------------------------------------------------------------------
Key: JBAS-3821
URL:
http://jira.jboss.com/jira/browse/JBAS-3821
Project: JBoss Application Server
Issue Type: Bug
Security Level: Public(Everyone can see)
Components: JMS service
Affects Versions: JBossAS-4.0.5.GA
Environment: Windows OS
Reporter: K N
Assigned To: Adrian Brock
Fix For: JBossAS-5.0.0.Beta1, JBossAS-4.2.0.CR1, JBossAS-4.0.5.SP1
The receive(), receive(long timeout), and receiveNoWait() methods in
SpyMessageConsumer.java does not have try/catch JMSException around the "SpyMessage
msg = session.connection.receive(subscription, xx)" method call. If JMSException is
thrown from this method call, the boolean "receiving" will not get reset.
Since the variable "receiving" will not get reset to false, if the client tries
to get message off the queue in the next iteration, the receive() methods in
SpyMessageConsumer will be force to perform "throw new JMSException("Another
thread is already in receive.")".
The only solution to the client is to close the queue connection and open a new queue
connection.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: