cancel
Showing results for 
Search instead for 
Did you mean: 

Re:Designing a scenario Soap to RFC

Former Member
0 Kudos

this is my scenario

Recieve a soap request in XI from systemA...map that request into a rfc and send towards r/3, get the response from r/3 map that into a soap response and send towards systemA

Can i get a complete step by step high level design for this scenario....i reward well..:)

Venkat

Accepted Solutions (0)

Answers (4)

Answers (4)

Former Member
0 Kudos

Do the Following steps in order which i have do 2 days back and scenario will work fine

U r should know the SOAP request and SOAP response structure.

in IR :

1. Import the RFC

2. Create Data type for SOAP request and then create message type same.

3. Create Data type for SOAP response and then create message type for same.

4. Create SOAP Outbound Synchronize Message Interface

5. Create SOAP Inbound Synchronize Message Interface

6. Create Message mapping for

Sender as SOAP request message and

Receiver as RFC request message and do the mapping.

7. Create Message mapping for

Sender as RFC response message and

Receiver as SOAP response message and do the mapping.

8. Create the Interface Mapping and specify required data under request and response tag. Remember there is only one interface mapping.

Now u have done with IR.

in ID :

1. Create following communication channels :-

At sender side:

Soap adapter : specify default interface name as Outbound message

interface.

At Receiver side:

RFC adapter : fill required data

2. Go to Tools > define web services

follow the steps.

in 1st step it will ask for URL.Refer the following URL:

http://XIServerName:Port/XISOAPAdapter/MessageServlet?channel=party:service name:communication channel name

and then it will ask for Integration Repository that you want to publish : outbound message interface name.

3. finally it will create wsdl file. save it somewhere. it will further used to send SOAP request thru ALTOVA XML SPY Enterprise Edition.

4. Now create receiver determination, sender agreement, receiver agreement, Interface determination.

In Software Altova Xml spy.

1. Open Altova spy.

2. Go to SOAP > create new soap request.

3. enter URL of WSDL file which is saved after created in ID and open it

4. Give the Input into that file.

5. goto SOAP > send SOAP request.

6. and u will get SOAP response there itself.

If any doubt plz let me know.

Former Member
0 Kudos

Hi Venkat,

yours is a Synchronous Scenario.

Here are the steps:

Design part:

Import ur RFC into SWCV,

Create ur create messagetypes according to ur WSDL,

create messsage interface at outbound as Synchronous,

Do mappings for Request and Response,

Assign the request and response mappings in ur Interface mapping,

Configuration Part:

Create a sender SOAP adapter and enter the parametrs like Outbound interface,namespace and Make sure that ur QOS is BE.

Create a RFC Adapter as receiver and give the Parameters to connect SAP sys

Create Sender and receiver agreements and also receiver determination and interface determination,then Activate the objects.

Test the scenario using Altova XML Spy or SAP Clinet tool .

And also go through these links for reference:

How to create Webservices:

[original link is broken]

https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/5f3ee9d7-0901-0010-1096-f5b...

/people/kumar.prashant4/blog/2006/07/14/using-rfc-as-webservice-in-webdynpro

/people/renald.wittwer/blog/2005/01/05/develop-a-web-service-that-sends-an-email

/people/sap.user72/blog/2005/09/15/creating-a-web-service-and-consuming-it-in-web-dynpro

/people/anilkumar.vippagunta2/blog/2005/07/20/developing-web-application-without-writing-single-line-of-code-my-first-web-log

/people/siva.maranani/blog/2005/09/03/invoke-webservices-using-sapxi

/people/shabarish.vijayakumar/blog/2006/03/23/rfc--xi--webservice--a-complete-walkthrough-part-1

/people/shabarish.vijayakumar/blog/2006/03/28/rfc--xi--webservice--a-complete-walkthrough-part-2

/people/padmankumar.sahoo/blog/2005/02/15/an-overview-of-soap

/people/community.user/blog/2006/09/19/xi-webservice-studio--a-plain-jane-soap-tool

https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/7ccd3e4e-0501-0010-95ae-afa58cb4...

https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/d23cbe11-0d01-0010-5287-873a2202...

https://www.sdn.sap.com/irj/sdn/webdynpro?rid=/webcontent/uuid/512040e1-0901-0010-769c-c238c6ca35d9 [original link is broken]

/people/shabarish.vijayakumar/blog/2008/01/08/troubleshooting--rfc-and-soap-scenarios-updated-on-20042009

thanks,

kalyan

Former Member
0 Kudos
justin_santhanam
Active Contributor
0 Kudos

Venkat,

The overall scenario is Synchronous scenario.

The sender adapter - SOAP, receiver adapter - RFC.

Create Synchronous O/B Interface.

Create two message mapping programs:

- <b>Mapping1</b> for SOAP request to RFC request [ Source - SOAP request, Target - RFC request]

- <b>Mapping2</b> for RFC response to SOAP response [ Source - RFC response, Target - SOAP response]

Create one Interface mapping program

Source - Synch O/B Interface

Target - RFC Message

After clicking Read Interfaces, In Request tab - choose Mapping 1, In Response tab- choose Mapping 2.

Rest of the configuration's are as usual.

If you need more input, please let me know!!

raj.

Former Member
0 Kudos

Raj,

Can i get a bit more of clarification..

This is what i have done..its a bit backwards i know...soap scenario...we import the wsdl etc...but here i dont have the luxury of getting a wsdl..

1) Create a data type for the soap req:- dt_req

2) Create a data type for the soap response:- dt_res

Based on the above..created the message types...

MT_soap_req

MT_soap_res

Imported the rfc...So got a Z_RFC_request, Z_RFC_response

Created Message Interfaces..

MI1_001:- Synchronous:- input is MI_Soap_Req, Output is Z_RFC_request

MI2_002:- Synchronous:- input is MI_Soap_Res, Output is Z_RFC_response

Created Message Mappings..

MM_001: MT_soap_req to Z_RFC_request

MM_002: MT_soap_res to Z_RFC_response

Created Interface Mapping...

Soap Request to z rfc...

and selected the different mappings for request and response...

Mapping test works fine..

When i activate them ..it fails issues are

1) Message int1 = references an rfc message and a non rfc message..

2) Message int2 = references an rfc message and a non rfc message..

any Ideas

Venkat

Former Member
0 Kudos

Thats fixed..i can send a request into the r3 system....and verified that it does..question is ...why dont i get smthing back...

Former Member
0 Kudos

Can someone clarify..here

ravi_raman2
Active Contributor
0 Kudos

Let me check with a friend..i think we ran into the same issue...and we fixed it...as for the mappings...those who suggested that you map rfc request to non rfc request..obviously havent done this before....:-))..else they would know it wont work

Regards

Ravi Raman