]
John Ament commented on SEAMJMS-65:
-----------------------------------
Please take a look at section 5.2.1 of the document. Yes, it is possible to end up with
an infinite loop of messages if you do not trigger events correctly. This is because
CDI's event life cycle does not share qualifiers between the callee and the caller.
Ingress JMS bridging results in endless invocations of observer
method
----------------------------------------------------------------------
Key: SEAMJMS-65
URL:
https://issues.jboss.org/browse/SEAMJMS-65
Project: Seam JMS
Issue Type: Bug
Components: Event Bridging
Affects Versions: 3.1.0.CR1
Environment: JBAS 7.1.0.Beta1b
Reporter: Thorsten Kunz
I have defined this interface method:
@Outbound public void routeStringToQueue(@Observes String string,
@JmsDestination(jndiName = "queue/pegasusMessage") Queue queue);
@Inbound public void routeStringsFromQueue(@Observes String string,
@JmsDestination(jndiName = "queue/pegasusMessage") Queue queue);
Then create this observer method:
public void inboundMessageTest(@Observes @Inbound String message) { ... }
Once a String type event is fired this is being logged:
13:59:26,095 INFO [org.jboss.seam.jms.MessageManagerImpl]
(http-localhost-127.0.0.1-8080-1) Routing destination HornetQQueue[pegasusMessageQueue]
with message HornetQMessage[null]:PERSISTENT
13:59:26,108 INFO [org.jboss.seam.jms.AbstractMessageListener] (Thread-1
(group:HornetQ-client-global-threads-1800568262)) Received a message
13:59:26,110 INFO [org.jboss.seam.jms.MessageManagerImpl] (Thread-1
(group:HornetQ-client-global-threads-1800568262)) Routing destination
HornetQQueue[pegasusMessageQueue] with message HornetQMessage[null]:PERSISTENT
13:59:26,337 INFO [org.jboss.seam.jms.AbstractMessageListener] (Thread-1
(group:HornetQ-client-global-threads-1800568262)) Received a message
13:59:26,339 INFO [org.jboss.seam.jms.MessageManagerImpl] (Thread-1
(group:HornetQ-client-global-threads-1800568262)) Routing destination
HornetQQueue[pegasusMessageQueue] with message HornetQMessage[null]:PERSISTENT
13:59:26,386 INFO [org.jboss.seam.jms.AbstractMessageListener] (Thread-1
(group:HornetQ-client-global-threads-1800568262)) Received a message
13:59:26,387 INFO [org.jboss.seam.jms.MessageManagerImpl] (Thread-1
(group:HornetQ-client-global-threads-1800568262)) Routing destination
HornetQQueue[pegasusMessageQueue] with message HornetQMessage[null]:PERSISTENT
13:59:26,403 INFO [org.jboss.seam.jms.AbstractMessageListener] (Thread-1
(group:HornetQ-client-global-threads-1800568262)) Received a message
13:59:26,404 INFO [org.jboss.seam.jms.MessageManagerImpl] (Thread-1
(group:HornetQ-client-global-threads-1800568262)) Routing destination
HornetQQueue[pegasusMessageQueue] with message HornetQMessage[null]:PERSISTENT
13:59:26,403 INFO [org.jboss.seam.jms.AbstractMessageListener] (Thread-1
(group:HornetQ-client-global-threads-1800568262)) Received a message
13:59:26,404 INFO [org.jboss.seam.jms.MessageManagerImpl] (Thread-1
(group:HornetQ-client-global-threads-1800568262)) Routing destination
HornetQQueue[pegasusMessageQueue] with message HornetQMessage[null]:PERSISTENT
[ ... and so on ... ]
It works just fine if I replace the observer method with a regular MDB for this
destination.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: