[seam-issues] [JBoss JIRA] (SEAMJMS-65) Ingress JMS bridging results in endless invocations of observer method
John Ament (Commented) (JIRA)
jira-events at lists.jboss.org
Sun Dec 18 21:33:09 EST 2011
[ https://issues.jboss.org/browse/SEAMJMS-65?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12651856#comment-12651856 ]
John Ament commented on SEAMJMS-65:
-----------------------------------
Ok... your routing isn't quite right, which is why the cyclic messaging is happening. When you map using routetype.both, as shown in the test case, it should work as expected
@Routing(RouteType.BOTH)
public void obsDoubleToTopic(@Observes Double d, @JmsDestination(jndiName = "jms/T2") Topic t);
Since you're putting everything in an interface, the @Routing is not necessary, since it is assumed by directional when none present. At your event injection point, you'll use:
@Inject
@Outbound
private Event<String> stringEvent;
your consumer looks correct.
> 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
> Assignee: John Ament
> Attachments: EventGenerator.java, RoutingInterface.java, TestMessageConsumer.java
>
>
> 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: https://issues.jboss.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
More information about the seam-issues
mailing list