cancel
Showing results for 
Search instead for 
Did you mean: 

JMS Adapter -> RFC (Sync ) RFC Repsonse-> JMS Adapter

Former Member
0 Kudos

Hello,

We have 40K + messages coming in from a 3rd party system through JMS Adapter. We need to process the messages in R/3 using RFC (sync) adapter and send the response back to the 3rd party system “with the messageID (CorrelationID)” using a JMS adapter.

Is there any procedure to do the same without BPM?

Thanks,

Peter

Accepted Solutions (0)

Answers (2)

Answers (2)

Former Member
0 Kudos

Alex,

Thanks for your reply. The solution is perfect. Our message consumer wants the correlationID/uniqueID in the JMS Message Header not on the payload.

Any idea?

Thanks,

Peter

former_member184154
Active Contributor
0 Kudos

Peter,

How did you configure your JMS receiver channel?

In the "XI Settings" section, the "Mappinf of Message" set to "Message Payload = JMS Payload" should fix your problem. (that is, xi header stuff should be mapped to jms header stuff).

If this doesn't work, I'm afraid you need to write something custom in a module... which is really something I love, but not in a forum topic

Let me know.

Former Member
0 Kudos

Alessandro,

The solution is perfect for our scenario. Thank you.

former_member184154
Active Contributor
0 Kudos

Glad to hear that. No awards?

Take care,

Alex

stefan_grube
Active Contributor
0 Kudos

Hi Peter,

this scenario is not possible without BPM. The JMS Adapter can only deal with asynchronous calls, which have to be transformed to a synchronous call by the BPM.

The only way to have the scenario without BPM would be, replacing the synchronous RFC with asynchronous interfaces (like IDOC) in the back end system. But this means to change the application code.

Regards

Stefan

former_member184154
Active Contributor
0 Kudos

Peter,

Another easy way to decouple your process could be to send RFC data to R/3 asynchrounously (which means treat your function module as an asynch message interface, which is possible), and at the end of the inbound function module code invoke a "response function module" pointing at XI as RFC destination. This second flow will, of course, map to and write to JMS.

That should be little change to your code, right?

I've done the same story with ABAP proxies and it work perfectly.

Let me know.

Cheers,

Alex