cancel
Showing results for 
Search instead for 
Did you mean: 

Any way to pass data between ICO in async sync bridge w/o BPM?

Former Member
0 Kudos

Hi, all

I am working on an interface async (proxy) -> sync (web service) -> async (proxy). In the interface, I am trying not to use BPM and call the ResponseOnewayBean instead. 3 ICO are created. One to send the message from proxy to web service. Another one to send the response to the receiving proxy. The third one to route the fault message returned from the web service to the receiving proxy.

They are working ok except I need a piece of data from the sending proxy to process the fault message in the receiving proxy. The web service developer said that they cannot control the fault message and thus cannot include the sending proxy data in the fault message. Then it comes to the embarrassing question on why PI cannot "remember" its data.

Is there a way to achieve this without BPM? Your prompt input is much appreciated as I am facing tight deadline.

Thanks,

Jonathan.

Accepted Solutions (0)

Answers (5)

Answers (5)

former_member194786
Active Contributor
0 Kudos

Hi Jonathan,

Haven't tried this myself, but you can try using the PutPayloadValueBean in the ICo #1 to pass the value to SOAP fault message.

Cheers,

Sanjeev

Former Member
0 Kudos

Thanks, Sanjeev. I will do some research on PutPayloadValueBean.

former_member190293
Active Contributor
0 Kudos

Hi Jonathan!

If I understand you right you need some data from request message to be passed to fault message?

If so, you could store needed data from request message to Dynamic Configuration and get it back when you receive response from web service.

It's worth mention that in ICo (not in classical scenario with EI involved) Dynamic Configuration data from request message is not transferred to response message so you need to use DynamicConfigurationBean before and after standard module in SOAP receiver adapter to get your data from DC into variable and put it back to DC section of response message. Further you can get that data from DC in response mapping.

Regards, Evgeniy.

Former Member
0 Kudos

Thanks, Evgeniy.


Are you aware of any link? I have thought about dynamic configuration. However, I thought DC only works in the same interface, not across interface. I am aware of this link


former_member190293
Active Contributor
0 Kudos

Hi Jonathan!

Here is working example of receiver SOAP channel configuration in Async-Sync adapter bridge:

Also you can use Sanjeev's suggestion but, I guess, in this case you have to modify external definitions of your WS messages by hands because you should put your values to target message in order to let adapter module get it from payload before sending it to endpoint and put it back to response message data after getting response message from adapter.

Regards, Evgeniy.

Former Member
0 Kudos

Thanks, Evgeniy. I will try it tomorrow.


Former Member
0 Kudos

Hi Jonathan,

           Please refer to the below blog, it might be helpful for you;.

- Muru

Former Member
0 Kudos

Raghuraman,

Thanks for your response. Can you be more specific? Note that the sending async proxy is running from a different ABAP system than the receiving async proxy.

The outbound(sender) proxy is async and thus do not get any response back.

Thanks,

Jonathan.

former_member186851
Active Contributor
0 Kudos

Hello Jonathan,

So its like below?

Proxy(ASYNC)------------------PI------------------------WS(SYNC)

WS(SYNC)--------------------PI-----------------------Proxy(ASYNC)

WS(SYNC)error if any--------PI-------------------Proxy(ASYNC)

Former Member
0 Kudos

That is right. The issue is how to pass a piece of data initiated from proxy(async) of ico#1 to ico#3 proxy(async) receiver. The WS developer said that they cannot do that for us.

Thanks,

Jonathan.

former_member186851
Active Contributor
0 Kudos

The response to ICO3 will be always or only in error cases?

Former Member
0 Kudos

ICO3 only gets initiated when the web service returns a fault message. Otherwise, ICO2 is initiated instead. ICO2 and ICO3 never get initiated at the same time ... at least that is what I noticed so far.

Thanks,

Jonathan.

former_member186851
Active Contributor
0 Kudos

Hello Jonathan,

Since proxy also supports Sync Flow you can add response structure to proxy and write code logic to consume proxy data.