cancel
Showing results for 
Search instead for 
Did you mean: 

JMS: Synch/Async bridge - how to configure

Former Member
0 Kudos

Hi,

I have a scenario where I need to do sync SOAP adapter to JMS (MQ).

Now I'm very much aware of the existence of the guide 'How to correlate JMS Messages'.

I have configured my scenario so that I have 2 synchronous MI's (1 outbound and 1 inbound). Request and response MT are assigned to these. Further more in the configuration I have:

- 1 receiver determination

- 1 interface determination

- 1 sender agreement

- 1 receiver agreement

I have 3 adapters:

- 1 Sender SOAP adapter

- 1 Receiver JMS (MQ) adapter

- 1 Sender JMS (MQ) adapter

Modules on both receiver and sender JMS adapter have been configured in accordance with the how to guide.

Now, everything goes fine so far that I see a message put onto MQ via receiver JMS adapter.

After this I get error:

SOAP: error occured: com.sap.aii.af.ra.ms.api.RecoverableException: Received HTTP response code 500 : Timeout: com.sap.aii.af.ra.ms.api.DeliveryException: Received HTTP response code 500 : Timeout

Question is what am I missing for the flow to work?

Maybe I should pin point that after having receiver message on MQ I manually add a new message onto the MQ Queue that my sender JMS adapter points to. When doing so I set the correlation ID to the same as what is specified in the first queue (where I received the initial message).

When reading http://help.sap.com/saphelp_nw04s/helpdata/en/45/20d2b4c20a0732e10000000a155369/frameset.htm I see i the buttom that a sender agreement should be present for my sender JMS adapter. So naturally I have tried this. I did it by letting it point to the inbound, synchronous MI, since this really is the one that need to receive the message and is waiting. This however does not work (afterwards I also tried creating a new asynchronous dummy interface and assign it to a sender agreement, but same result). The message is of cause retrieved from MQ but afterwards I get timeout error.

Hope someone can throw a little clearity on to this topic.

Last things to point out is that I'm running 2004s SP 10.

Below is show the audit log as it looks for the sender JMS adapter

***********************************************************************

***********************************************************************

Audit Log for Message: de29a7d0-1f32-11dc-b58a-0013211ef067

Time Stamp Status Description

2007-06-20 15:33:45 Success New JMS message with JMS message ID ID:c3e2d840d4d8c3e34040404040404040c0c66c36909714e2 received. The XI message ID for this message is de29a7d0-1f32-11dc-b58a-0013211ef067

2007-06-20 15:33:45 Warning The following error occurred during message processing: JMSCorrelationID ID:64306435663136302d316633322d313164632d623435392d is not known JMSMessageID of a request. It cannot be mapped to the request XIConversationID as it is configured in the channel. The correlation in XI may fail!

2007-06-20 15:33:45 Success JMS message converted to XI message format successfully

2007-06-20 15:33:45 Success NRB: entering NotifyResponseBean

2007-06-20 15:33:45 Success NRB: notifying the receiver for ID:64306435663136302d316633322d313164632d623435392d ...

2007-06-20 15:33:45 Success NRB: notified

2007-06-20 15:33:45 Success NRB: leaving NotifyResponseBean

2007-06-20 15:33:45 Success MP: leaving

2007-06-20 15:33:45 Success JMS message delivered to XI successfully

***********************************************************************

***********************************************************************

Below is show the audit log as it looks for the receiver JMS adapter

***********************************************************************

***********************************************************************

Time Stamp Status Description

2007-06-20 15:55:36 Success Message successfully put into the queue.

2007-06-20 15:55:36 Success The message was successfully retrieved from the request queue.

2007-06-20 15:55:36 Success The message status set to DLNG.

2007-06-20 15:55:36 Success Delivering to channel: MQ_Receiver_CC

2007-06-20 15:55:36 Success MP: entering

2007-06-20 15:55:36 Success MP: processing local module localejbs/AF_Modules/RequestOnewayBean

2007-06-20 15:55:36 Success ROB: entering RequestOnewayBean

2007-06-20 15:55:36 Success ROB: forwarding the request message

2007-06-20 15:55:36 Success ROB: leaving RequestOnewayBean

2007-06-20 15:55:36 Success MP: processing local module localejbs/SAP XI JMS Adapter/ConvertMessageToBinary

2007-06-20 15:55:36 Success XI message converted to binary format successfully

2007-06-20 15:55:36 Success MP: processing local module localejbs/SAP XI JMS Adapter/SendBinarytoXIJMSService

2007-06-20 15:55:36 Success Message successfully received by messaging system. Profile: XI URL: http://blrxe26.kmd.dk:50100/MessagingSystem/receive/AFW/XI Credential (User): PIISUSER

2007-06-20 15:55:36 Success Using connection JMS_http://sap.com/xi/XI/System. Trying to put the message into the request queue.

2007-06-20 15:55:36 Success New JMS message will be correlated with the XI message. Correlation rule: XI_MESSAGEID, correlated property: JMSCorrelationID, correlation value: ebe874c0-1f35-11dc-cbe9-0013211ef067

2007-06-20 15:55:36 Success JMS message forwarded to JMS provider successfully

2007-06-20 15:55:36 Success XI message in binary format forwarded to the XI JMS service successfully

2007-06-20 15:55:36 Success MP: processing local module localejbs/AF_Modules/WaitResponseBean

2007-06-20 15:55:36 Success WRB: entering WaitResponseBean

2007-06-20 15:55:36 Success WRB: retrieving the message for ebe874c0-1f35-11dc-cbe9-0013211ef067 ...

2007-06-20 15:56:42 Error SOAP: error occured: com.sap.aii.af.ra.ms.api.RecoverableException: Received HTTP response code 500 : Timeout: com.sap.aii.af.ra.ms.api.DeliveryException: Received HTTP response code 500 : Timeout

2007-06-20 16:00:36 Success WRB: retrieved the message: null

2007-06-20 16:00:36 Error WRB: error during processing: com.sap.aii.af.ra.ms.api.RecoverableException: no message received

2007-06-20 16:00:36 Error MP: exception caught with cause com.sap.aii.af.ra.ms.api.RecoverableException: no message received

2007-06-20 16:00:36 Error Exception caught by adapter framework: no message received

2007-06-20 16:00:36 Error Delivery of the message to the application using connection JMS_http://sap.com/xi/XI/System failed, due to: com.sap.aii.af.ra.ms.api.RecoverableException: no message received. Setting message to status failed.

2007-06-20 16:00:36 Error The message status set to FAIL.

2007-06-20 16:00:36 Error Returning synchronous error message to calling application: com.sap.aii.af.ra.ms.api.RecoverableException: no message received.

***********************************************************************

***********************************************************************

Best Regards,

Daniel

Accepted Solutions (0)

Answers (4)

Answers (4)

Former Member
0 Kudos

Configuration was fine - except SAP guide and help.sap.com said to use XI and JMS message id in adapter config. This gave problem since XI message id is 32 bytes whereas MQ message id is only 24 bytes long, so thats why it got truncated and thus didn't work. Now I've configured using JMS Correlation id and XI conversation id and it works!!!

Former Member
0 Kudos

Hi Daniel,

I have been facing the same issue. My senario is also same but unfortunately i have not been able to get it running even when i map XI conversion ID to JMS Correlation ID. Please let me know if any more setting is required to be done.

The error i'm getting is the conversion id is null

Rgds

Aditya

Former Member
0 Kudos

Hi again,

What I would really like to have clearified is how the configuration is supposed to look like.

Is correct that all I need is;

- 2 synchronous message interfaces, 1 inbound and 1 outbound

- 1 Receiver determination

- 1 Interface determination

- 1 Receiver agreement (JMS adapter with module configuration)

- 2 Sender agreements (in my case 1 soap and 1 JMS adapter - the later with module configuration).

- The sender and receiver JMS adapters point to different MQ queues (request and response queues)

- The sender agreement for the JMS adapter uses my synchronous, inbound message interface (isn't this really just a "dummy" just to actually fetch data from response queue - meaning that the actual utilized business system/service, MI and namespace are unimportant, since the module will make the adapter notify the listening module in the receiver JMS adapter?)

Best Regards,

Daniel

ravi_raman2
Active Contributor
0 Kudos

Daniel,

i think its very obvious that its not a timeout issue directly, but a timeout issue caused as a result of the correlation ID from the logs, did you fix the problem already, if not can u turn trace to high and send me the logs.

Can you clarify this

"Maybe I should pin point that after having receiver message on MQ I manually add a new message onto the MQ Queue that my sender JMS adapter points to. When doing so I set the correlation ID to the same as what is specified in the first queue (where I received the initial message).

"

That is where smthing is going wonky.......

Regards

Ravi Raman

Former Member
0 Kudos

Hi,

Also thanks for your reply. The problem is not solved yet - but i haven't had the time yet to follow up on it. I will try to increase trace and investigate the logs and revert back.

As for the second part of your question, the manual part is done via the tool 'MQ Visual Edit'. What I do is, I find the correlation ID set in the message on the "request" queue. Afterwards I insert a new message into the "response" queue and copy the correlation ID found in the previous step.

Best Regards,

Daniel

Former Member
0 Kudos

Hi,

I have created a document describing the whole process and also contains logs and traces from the individual step - so if your offer still stands, I can email it to u if u give me your mail.

Best Regards,

Daniel

praveen_yeddula2
Explorer
0 Kudos

test

prateek
Active Contributor
0 Kudos

Have a look into SAP Notes – 804124, 807000

This is without BPM

/people/venkataramanan.parameswaran/blog/2007/01/18/syncasync-communication-in-jms-adapter-without-bpm-sp19

Also for timeouts

/people/michal.krawczyk2/blog/2006/06/08/xi-timeouts-timeouts-timeouts

Regards,

Prateek

Former Member
0 Kudos

Hi,

Thanks for your reply. I am familiar with the weblogs. The first is unfortunately not very detailed and the second I dont believe is applicable. I agree with the other post that the timeout is not really my issue - just a "side effect" of the real problem.

Best Regards,

Daniel