Skip to Content

Copy synchronous response to separate asynchronous mapping

Jan 12 at 09:27 AM


avatar image

Hi Folks

I have a integration scenario challenge, that I was sure could be implemented technically. But after searching the communicty and google in general, I still havent found a solution. Therefore I would like to hear if any of you have any input to this challenge..

The requirement is pretty simple: System A make a synchronous request to System B. Response should be synchronous returned to System A, but System C should get a asynchronous copy of the response.

Illustrated like this:

However I cant find any way of copying the response and forward it to the asynchronous integration.

Anyone having any suggestions to how this can be achieved.. (Or if it is possible at all)

Thanks a lot for your input.


10 |10000 characters needed characters left characters exceeded
* Please Login or Register to Answer, Follow or Comment.

4 Answers

Muni M Jan 12 at 12:30 PM

You can also split it into two interfaces, instead of one. this can save the System A's waiting time.

System A to System B ====> sync scenario

and create one more async scenario

System A to System C =====> Async Scenario

In the sender proxy coding(A), once you get the response from system B, trigger 2nd asynchronous interface.

Show 3 Share
10 |10000 characters needed characters left characters exceeded

Thanks Muni

So is it possible to use the response data exactly as is when triggering the async call from system A to System C?



Chris Christoffersen

Yes. It is possible to do that.


This will add additional failover points apart from connectivity issue. Like Supoose your first scenario is successful and you second scenario is failed. So data mismatch in system A and C.

If you handle that in the response message then if mapping will be successful means if system C will be updated then there are very less chances to fail updation of system A with the response as it is single sync scenario. Though there are chances of failure here as well but definitely failover points and pipeline steps will be less.

Chris Christoffersen Jan 12 at 01:42 PM

Thanks for the responses so far.. It is very much appreciated that you take your time to help out.

But I am still wondering if there is any adapter modules to be used. Like for example when creating an async/sync bridge with the OneWayResponseBean. I would like a CopyPayloadAndRedirectToThisInterfaceAsync Module :-)



10 |10000 characters needed characters left characters exceeded
Evgeniy Kolmakov Jan 14 at 04:32 PM

Hi Chris!

Maybe it worth trying to develop custom adapter module that creates a copy of response message and separately sends it to messaging system?

Regards, Evgeniy.

10 |10000 characters needed characters left characters exceeded
Apu Das Jan 12 at 11:14 AM

Hi Chris,

I believe the best way is to create one synchronous scenario from system A to system B and in the response message mapping doing one look up to the system C to push the response. Now the type of look up can be RFC look up/jdbc look up/soap look up/REST look up as per system type C.



Show 2 Share
10 |10000 characters needed characters left characters exceeded

look up is for sync interface,though here chris can make the RFC as sync and return some dummy message in the RFC.


Thanks Apu

As Muni writes it would then require the lookup to return a dummy response as it is synchronous.