cancel
Showing results for 
Search instead for 
Did you mean: 

SOAP receiver starting the integration scenario

Former Member
0 Kudos

Hello experts,

I am searching for a way to start an integration scenario with a SOAP receiver in the same way it is possible with JDBC sender (with a pool interval).

The scenario is: I need to execute a webservice, getting information from it, and send this information to an abap proxy on ECC side.

I thought about creating a ccBPM with a loop (with no end) and a wait step for doing it... although it works, I think it is not the best way for doing it.

Thanks for your suggestions!

regards.

Roberti

Accepted Solutions (1)

Accepted Solutions (1)

baskar_gopalakrishnan2
Active Contributor
0 Kudos

Here is the suggestion.

Looks like you are going to use abap proxy to soap (synchronous). You trigger a call using sender abap proxy and pass the data to the soap receiver and vice versa. Whenever you want to trigger call, do it via abap proxy.

Answers (3)

Answers (3)

stefan_grube
Active Contributor
0 Kudos

Write an ABAP report and schedule it as job.

Use a sync proxy, read the webservice and receive the response.

Former Member
0 Kudos

Thank you guys.

Let me explain the scenario in a better way.

The scenario is:

1 - Automatically execute a partner webservice sync call with constant parameters.

2 - Get the webservice response.

3 - Map the response to get required information.

4 - Send this information to an Abap proxy.

5 - Process the information to proper abap objects.

Note: This scenario needs to be automatically executed every 30 minutes.

The purpose of this scenario is to GET documents (xml) from a partner web service and import the information to ECC, continuously, each 30 minutes. So, no one is supposed to start the process, it should be automatically triggered. The goal is exactly the same we have with JDBC or file sender adapter, where we can set a 30 minutes interval to automatically execute an sql statement in the database or read a file in a path.

JAVAGUY and Stefan Grube, I did it in this way. But, scheduling an Abap job to start the proxy -> webservice -> proxy scenario, the Abap job is the RESPONSIBLE for the scenario. If something wrong occurs with that job schedule, the integration will stop working. I would prefer PI as responsible for the process, so I can have alerts and other execution guarantees.

Abhishek Salvi and Pratik_du, I think that the scenario is clear now, don't it? About the ccBPM, this is another way I implemented the solution. I created a ccBPM with

1 - A receiver that I execute just once

2 - One loop with a condition 1 = 1 (infinite)

2a (Into the loop) - A send step to execute the webservice sync call

2b (Into the loop) - A receiver step to get the webservice response

2c (Into the loop) - A map step to transform the information I need

2d (Into the loop) - A send step to send the information to the Abap proxy

2e (Into the loop) - A wait step to wait 30 minutes until execute the next step of the loop

IIn this case, I will have a ccBPM running continuously and doing the job.

I posted the question because I'm not sure which solution is better, and check if you can see another way to make PI the responsible for starting a scenario with a soap receiver like this.

Thank you again.

Roberti

former_member200962
Active Contributor
0 Kudos
Note: This scenario needs to be automatically executed every 30 minutes.
I would prefer PI as responsible for the process, so I can have alerts and other execution guarantees.

PI needs a trigger to start processing of an interface....it cant act on its own.

IIn this case, I will have a ccBPM running continuously and doing the job.

not at all a good design

Edited by: abhishek salvi on Jan 20, 2011 4:29 PM

Former Member
0 Kudos

Abhishek salvi,

I'm sorry to say that, but you are wrong, it can.

Samples of it, I already mentioned, are JDBC and File sender adapters.

regards.

roberti

baskar_gopalakrishnan2
Active Contributor
0 Kudos

IMHO, CCBPM is not intended to use the way you described. Here is my few cent.

Per my previous reply, you can trigger using job from abap side. So proxy call will be initiated appropriately to send request to soap receiver. I concur with Abhisek and Stefan's suggestion.

Former Member
0 Kudos

Thank you guys,

I agree with you, ccBPM is not the best way of doing it. I just mentioned to show what I already implemented, trying to provide you an example about what I need.

About the Abap job, I'm not confortable about this solution. It could stop working if anything wrong happen in job scheduling...

stefan_grube
Active Contributor
0 Kudos

> About the Abap job, I'm not confortable about this solution. It could stop working if anything wrong happen in job scheduling...

This could happen to your BPM also.

We use jobs for sending data to PI regularily every 15 minutes.

Edited by: Stefan Grube on Jan 20, 2011 4:42 PM

Former Member
0 Kudos

Ok,

I thought we could find a better way for doing it.

I will continue with the same we have, abap job scheduling.

Thank you for your suggestions!

bye.

roberti.

stefan_grube
Active Contributor
0 Kudos

Could you call the web service directly from ECC without using the PI?

As it is syncronous, this would be more stable.

Former Member
0 Kudos

Hi Roberti,

I think Abhishek has asked a pertinant question. We need to know the end to end scenario. From your description it's evident that its a SOAP Receiver which triggers a web service call and the response needs to be sent to SAP via ABAP Proxy but which system is the original sender of the request and how the data is picked?

Best Regards,

Pratik

former_member200962
Active Contributor
0 Kudos
I need to execute a webservice, getting information from it, and send this information to an abap proxy on ECC side.

which system is going to send the request?

I thought about creating a ccBPM with a loop (with no end) and a wait step for doing it

why do you need a loop and a wait step?