Results 1 to 10 of 10

Thread: jms outbound gateway and aggregator

  1. #1
    Join Date
    Feb 2010
    Posts
    15

    Default jms outbound gateway and aggregator

    Hi, I'm getting failing to receive jms message within timeout exception with the following configs, I just want to see if i get the message back or not, can anyone tell me what i did wrong? I copied the aggregator stuff from Oleg's 2011 spring conference. thanks

    <si-jms:outbound-gateway id="mygateway" request-channel="splitchannel" request-destination="outboundQueue"
    reply-channel="myReplyChannel" reply-destination-name="QUEUEUNAME"
    connection-factory="queueConnectionFactory"/>

    <si:aggregator input-channel="myReplyChannel" output-channel="loggingChannel"
    release-strategy-expression="size() == 1"
    send-partial-result-on-expiry="true" message-store="messageStore"
    expire-groups-upon-completion="false"/>

    <si:logging-channel-adapter id="loggingChannel" log-full-message="true"/>

    <bean id="messageStore" class="org.springframework.integration.store.Simpl eMessageStore"/>

  2. #2

    Default

    Any luck with this?

  3. #3
    Join Date
    Feb 2010
    Posts
    15

    Default

    no luck, I have a service activator with a bean ref using the outputchannel of the outbound gateway, the reply is not going to that method at all. any help is appreciated

    thanks

  4. #4
    Join Date
    Jan 2008
    Location
    Mohnton, PA USA (that's near Philadelphia)
    Posts
    2,148

    Default

    I'd suggest to look at the JMS sample https://github.com/SpringSource/spri...ster/basic/jms first

    Looking at your configuration it does not seem to be complete. You have JMS Outbound Gateway which implies that it will send a Message to JMS and receive a reply from JMS. Do you have something in the other side that produces a reply?

  5. #5
    Join Date
    Feb 2010
    Posts
    15

    Default

    Hi, the external queue is a mainframe queue that sends response back as a reply, but my service activator is not picking them up in the replyqueue

  6. #6
    Join Date
    Jan 2008
    Location
    Mohnton, PA USA (that's near Philadelphia)
    Posts
    2,148

    Default

    I don't see how Queue can send a reply back. Do you mean there is some listener on the mainframe that listens to the 'QUEUEUNAME' and sends a reply back to the replyQueue?

    It seems to me that the reply is not coming.

    I'd suggest to simplify configuration to first simply validate that reply is coming by configuring a logger to the 'myReplyChannel'
    Code:
    <si-jms:outbound-gateway id="mygateway" request-channel="splitchannel" request-destination="outboundQueue"
    reply-channel="myReplyChannel" reply-destination-name="QUEUEUNAME"
    connection-factory="queueConnectionFactory"/>
    
    <si:logging-channel-adapter channel="myReplyChannel" level="WARN"/>
    Also, could it be that the mainframe is too slow with response? Try setting 'receive-timeout' attribute to some significant value. The default is 1 sec. so set it to 10 (e.g., receive-timeout="10000")

  7. #7
    Join Date
    Feb 2010
    Posts
    15

    Default

    i tried the logging and nothing printed out, yes there is a listener listening to the mainframe and in turn sends a reply back.

    thanks

  8. #8
    Join Date
    Jan 2008
    Location
    Mohnton, PA USA (that's near Philadelphia)
    Posts
    2,148

    Default

    You have to look where its sending the reply to. I don't know how your listener is implemented and if it sends a reply to the replyQueue identified by the property of the incoming message or somewhere else, so I suggest to look at the mainframe code/logs and see where reply is sent.

  9. #9
    Join Date
    Feb 2010
    Posts
    15

    Default

    Hi, I found the following post as I'm using websphere mq as well. I'm wondering how would the outbound gateway pick up message if the correlationid of the response wasn't set as the messageid of the request. thanks

    http://forum.springsource.org/showth...ay-with-IBM-MQ

  10. #10
    Join Date
    Feb 2010
    Posts
    15

    Default

    since outboundgateway is a 1 one 1(request-reply) use case, i've decided to use the outbound channel adaptor and message driven channel adaptor, but when i send a request out, i get no reply at all and no errors either, anyone please help?

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •