cancel
Showing results for 
Search instead for 
Did you mean: 

SAP PI 7.3 Webservice scenario

Former Member
0 Kudos

Hello,

I was searching for a scenario in PI 7.3 (SINGLE STACK) where web service would access data from the stored procedure but couldn't find anything.

Please advice.

Thank you!

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Hello,

Ur thread is not at all clear, so always try to post as much relevant information as possible if u are expecting some helpful answers.

With ur limited information, i am assuming that ur sender system will initiate a request using SOAP message to PI and then PI has to synchronously retrieve response from DB (using SP) for the above soap request and eventually DB response has to be mapped to ECC system using ABAP proxy?

If yes, then u can use request/response bean module to achieve ur scenario. Search SDN u will find lot of articles (recently William Li has published a good article on the same).

Thanks

Amit Srivastava

Former Member
0 Kudos

Yes, I have a sync scenario where a web service sends a request with a table name and PI delivers that request through ABAP proxy to the ECC system. Then ECC sends back the response with two fields- values and description.

Question : Do I need Restful web service for this scenario? Sender party wants to communicate through JSON web service if possible? If I don't have REST Adapter is it necessary to use AXIS protocol for a SYNC SOAP(Web service) to RFC (ABAP Proxy) scenarios?

I had gone through various blogs with similar requirement:

http://scn.sap.com/community/pi-and-soa-middleware/blog/2012/08/11/calling-synchronous-restful-web-s...

REST Web Services in XI (Proof of Concept) - Process Integration - SCN Wiki

former_member184720
Active Contributor
0 Kudos

Do I need Restful web service for this scenario? Sender party wants to communicate through JSON web service if possible?


>>> You don't need a restful service. But your third party system is interested in JSON and i believe it doesn't support SOAP.


?Is it necessary to use AXIS protocol for a SYNC SOAP(Web service) to RFC (ABAP Proxy) scenarios?


>>> Yes. You have to use SOAP adapter's AXIS framework unless you got third party "REST" adapters.


Another blog for reference..


Former Member
0 Kudos

So you mean I cannot use simple web service  SOAP HTTP protocol for such kind of scenarios?

Former Member
0 Kudos

I can purpose the business to buy REST adapter if that is more efficient than using SOAP Axis way

Former Member
0 Kudos

Hello,

I think u can write custom AM to convert ur JSON message to XML and then use it for further processing.

>>I can purpose the business to buy REST adapter if that is more efficient

If ur client is ready to buy then i think it's the best option

REST Adapter for SAP NW PI | Advantco SAP NetWeaver Solutions

Thanks

Amit Srivastava

Former Member
0 Kudos

>>I think u can write custom AM to convert ur JSON message to XML and then use it for further processing.

My partner can send me SOAP-XML if I don't have REST adapter.

But my questions is what is the best practice for a sync web service<-->ABAP Proxy scenario?

1) Can I use SOAP-HTTP sender channel or do I have to use SOAP-Axis for my scenario?

2) If I have to use SOAP-Axis, should I purpose REST adapter as more efficient way to the business?

Former Member
0 Kudos

Hello,

>>Can I use SOAP-HTTP sender channel or do I have to use SOAP-Axis for my scenario?

It depends how u want to integrate with external system and what all protcols system can support.

So, if i were u, then i would have simply used SOAP adapter to complete integration becoz external system is ready to send SOAP message.

But having said that, in case performace is one of the key aspect and using JSON over SOAP is drastically improving performace then i would go for REST adapter (if i have it in my landscape) for JSON integration.

>>If I have to use SOAP-Axis, should I purpose REST adapter as more efficient way to the business?

I am not sure what u menat by that. But i believe u want to ask that if u have to do JSON integration then using Rest is a more efficient way? Right?

So my answer would be YES

Thanks

Amit Srivastava

Former Member
0 Kudos

>>So, if i were u, then i would have simply used SOAP adapter to complete integration becoz external system is ready to send SOAP message.

For this SOAP channel, considering my scenario, would you use AXIS protocol or the normal HTTP would work?

Former Member
0 Kudos

Yes, indeed i would have used SOAP channel with HTTP protocol becoz u have already confirmed that ur sender is ready to send messages in a normal soap format.

Thanks

Amit Srivastava

Former Member
0 Kudos

For my  sync scenario where a web service sends a request with a table name and PI delivers that request through ABAP proxy to the ECC system. Then ECC sends back the response with two fields- values and description, I think it would start with HTTP GET operation. Therefore I might want to consider using  SOAP AXIS adapter for the GET operation right??

former_member184720
Active Contributor
0 Kudos

i think it would start with HTTP GET operation. Therefore I might want to consider using  SOAP AXIS adapter for the GET operation right??


>>>  Operation is something depends on your sender webservice but no on the ABAP proxy. I don't think you can decide that.


However if it only supports GET then you might have to use SOAP AXIS


Former Member
0 Kudos

Hello,

>> I think it would start with HTTP GET operation. Therefore I might want to consider using  SOAP AXIS adapter for the GET operation right??

AFAIK, using HTTP getter method in Sender SOAP AXIS u can only poll the message but in ur case ur sender is gng to push dynamic data in URL? So i am not sure how soap axis would help u.

BTW, u can also look for standard HTTP_AAE Adapter which suports HTTP Get method.

Thanks

Amit Srivastava

Former Member
0 Kudos

sender is sending SOAP-XML would it be supported by HTTP_AAE?

former_member184720
Active Contributor
0 Kudos

Yes. You can use it.

You just need to mention the main-payload parameter(which would contain your soap-xml) in the communication channel.

Refer to the below blog for the better understanding on the configuration part..

.

Former Member
0 Kudos

Let me try on the test scenario and will get back to you!

Thank you for all your help!!

Former Member
0 Kudos

>>sender is sending SOAP-XML would it be supported by HTTP_AAE?

That's the reason i proposed u to use HTTP_AAE instead of soap axis

Actually, soap internally uses HTTP protocol only but the difference is just in the way how SOAP (data in envelope) and HTTP sends data.

Thanks

Amit Srivastava

Former Member
0 Kudos

Thanx for that information Amit!

I just saw that I can either use GET or POST as message Protocol.

So for my scenario I have to construct 2 channels? 1) Sender as GET 2) Receiver as POST

How would it work in one ICO as a synchronous scenario??

Former Member
0 Kudos

Hello,

No, u don't need two different channels.

Just use HTTP_AAE (GET) as the sender adapter and configure ur scenario and rest will be taken care by PI.

Thanks

Amit Srivastava

Former Member
0 Kudos

Ok I will try that. thank you!

former_member184720
Active Contributor
0 Kudos

For receiver, you would be using the SOAP channel(for inbound ABAP proxies) but not the HTTP adapter.

You can have a look at the below document for receiver channel configuration

http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/70066f78-7794-2c10-2e8c-cb967cef4...

How would it work in one ICO as a synchronous scenario??

>>> Like any other interface.. It's just that a synchronous interface? May be i didn't understand the question

Former Member
0 Kudos

Thanx Hareesh, all the information was quite helpful. Let me try a test scenario and I hope I will get through this successfully with all the information I have now but if not I will look forward for more help.

Thank you again!!

Answers (3)

Answers (3)

Former Member
0 Kudos

I am using REST adapter for this scenario!

Former Member
0 Kudos

Nope that's not required in SAP PI 7.3


former_member184720
Active Contributor
0 Kudos

What do you mean by not required in 7.3? can you be more specific? is it the UDF?

We have DBlookup standard function to query the tables but not the stored procedure. If you want to extract the data from any table then you can use standard function.

Former Member
0 Kudos

My question is how can we use the Soap Adapter for the web service on the sendER side not any UDF

former_member184720
Active Contributor
0 Kudos

There is nothing changed in 7.3 in soap(web service ) configuration

http://help.sap.com/saphelp_nw73/helpdata/en/48/3555240bea31c3e10000000a42189d/frameset.htm

Create an integrated configuration and publish the wsdl into servie registry.

Former Member
0 Kudos

ok then how would you access the Stored procedure?

former_member184720
Active Contributor
0 Kudos

Why do you want a web service to execute the procedure?

You can directly execute the procedure in the sender channel.

For some reason you want to expose a webservice to supply the input parameters to your procedure then you have follow the approach which i stated earlier.

soap request(develop DT,MT,SI with the fields you want to expose in the web service)

Abap proxy(DT,MT,SI)

Mapping - soap request - abap proxy (using the above UDF execute the procedure to get the response and map it to target structure)

In the ID, generate wsdl and give to the users to execute the interface.

former_member184720
Active Contributor
0 Kudos

Hi Simran - What do you mean by webservice accesing a store procedure?

Are you looking for SOAP (webservice)- SAP PI - JDBC ( stored procedure) scenario?

Former Member
0 Kudos

Yes, actually (SOAP)web service to ABAP proxy. And web service access the stored procedures for the data.

former_member184720
Active Contributor
0 Kudos

Then i think your scenario would be like this -

Soap - mapping (DB lookup) - Soap

Below blog will help you with the UDF to invoke stored procedure during the mapping

http://scn.sap.com/community/pi-and-soa-middleware/blog/2013/07/19/sap-pi--udf-to-capture-multiple-r...