You are on page 1of 26

Hi, Guest

Log On
Join Us

Getting Started

Search for:

Products
Services & Support
About SCN
Downloads
Industries
Training & Education
Partnership
Developer Center

Lines of Business
University Alliances
Events & Webinars
Innovation

Newsletters

Store

Activity
Communications
Actions

BrowseMore

More blog posts in Process Integration (PI) & SOA MiddlewareWhere is this place located?
Process Integration (PI) & SOA Middleware
Previous postNext post

How to Create Web Services ABAP based


Posted by Juan Manuel in Process Integration (PI) & SOA Middleware on Oct 24, 2012 3:38:19 PM
inShare

Using SAP XI/PI middleware we can create and expose WebServices, in this
blog we are going to try to explain how an ABAP WebService can be created,
exposed and tested only using ABAP.
First, we have to expose a Function Group as an Enterprise Service which is
going to be ready to be called.
Well use Function Group Z_WEBSERVICE_TEST which has Function
ModuleZ_CALCULO and we are going to expose it as an Enterprise Service.
We are using the wizard for Web Service creation.

Right click on the Function Group, then select Create -> Web Service

Write the Service Definition Name, a brief description and set the EndPoint as
Function Group

We have to specify the Function Group name that is going to implement this
Service Definition.

Select the Function Module.

Use the default profile called PRF_DT_IF_SEC_LOW to establish the lowest


security profile in this Service Definition.
Make sure to check the field Deploy Service. If you dont check the field,
you can complete this step later manually from transaction code
SOAMANAGER using the option for creating an EndPoint in 'Configurations'
tab.

Check Local Object field to save the object locally (not transport)

In the final step choose the Complete option

Now that we have completed the previous step we can see the next screen
where we can explore the service definition.

We have to enter to the trx. SOAMANAGER and choose the tab Application
and Scenario Communication -> Single Service Administration.

We have to search the WS Definition that we created.

When we click on Open WSDL Document for selected binding a new


windows pops up with the WSDL document:

The final WSDL file in now available.

With this, we have finished the creation of the WebService and it's
ready to be used for any external application.
Note: If you change some parameters in you function, you need to update it
in the service definition. To do this go to trx. SE80 and select your previously
created Service Definition and do a syntax check, then it will ask you if you
want to correct the new parameters in the definition.
In the next chapter we are going to find how can we consume this WS using
an ABAP proxy class.
Part 2:

http://scn.sap.com/community/pi-and-soamiddleware/blog/2012/10/24/creating-a-service-consumer-proxy

Hi, Guest

Log On

Join Us

Getting Started

Search for:

Products
Services & Support
About SCN
Downloads
Industries
Training & Education
Partnership
Developer Center

Lines of Business
University Alliances
Events & Webinars
Innovation

Newsletters

Store

Activity
Communications
Actions

BrowseMore

More blog posts in Process Integration (PI) & SOA MiddlewareWhere is this place located?
Process Integration (PI) & SOA Middleware
Previous postNext post

Creating a Service Consumer Proxy


Posted by Juan Manuel in Process Integration (PI) & SOA Middleware on Oct 24, 2012 10:37:11 PM
inShare

In this part, well see the process to create Proxy consumer service.
Previously, we have seen how to create an ABAP based web service

First, we have to start the wizard to create a new service using trx. SE80.
Right click and then Create->Enterprise Service.

This time, in Object Type field we choose Service Consumer:

For the Service Consumer source, we can choose amongst Enterprise Service
Repository, URL or the path of WSDL a local file, UDDI, and the Service
Registry.
Please select URL/HTTP Destination.

Fill with the URL of the WSDL previously created.

Before continue, we enter to SOAMANAGER transaction code and


choose: Application and Scenario Communication ->Single Service
Administration.

Search the Service previously created and choose Apply Selection. Now we
can see the Service Definition details.

You have to click on the Open Web Service navigator for Selected
Binding link. The combo button shows the Endpoint defined for the Service.
Itll pop up the WSDL where we have to take the URL to create the proxy.

Use the URL in the wizard:

Fullfil the necesary data in the wizard.

In final step, you can click on Complete to start the creation of the Proxy
object.

Enter your login data:

The proxy class is shown. Click on Save and Activate.

Go back to the SOAMANAGER trx. to configurate a logical port for our


service provider.
Logical ports are made to configurate the time features of a WS execution.
We
can
create
a
logical
port
from LPCONFIG (obsolete)
or SOAMANAGER as we are showing next.
A consumer proxy never stores details about a server URL (which is system
specific). These details have to be configured through logical ports and
EndPoints.
For example: when we transport a proxy class from a Development system to
QA system. The proxy class doesnt contain any information about which
server the WS has to be called, this is handled by a logical port-.
Go back to the SOAMANAGER trx. This time, when you search in Web
Service Administration choose Consumer Proxy. Dont forget to click on
Apply Selectiona after highlighting the proxy.

In the Configuration tab, select Create Logical Port.

In the pop-up shown, you have to fill several parameters. First, give a name
for the logical port and set it as the default logical port.
Next we have to select Config. Type based on WSDL.
The application reads all the security parameters needed to call this service
directly from WSDL definition.
Finally, we have to fill the WSDL URL for the called Web Services. Also, you
have to give the system user name and password to access the WSDL

If the creation was success, the system will take us back to the Config.
Screen, where we can continue with the logical port configuration. Once
more, introduce the user name and password (they are going to be used as a
credentials to call this service and to save the logical port).

The next and final section is: Testing a Service Consumer Proxy:
http://scn.sap.com/community/pi-and-soa-middleware/blog/2012/10/25/testing-a-service-consumerproxy
5928 Views

Hi, Guest

Log On
Join Us

Getting Started

Newsletters

Search for:

Products
Services & Support
About SCN
Downloads
Industries
Training & Education
Partnership
Developer Center

Lines of Business
University Alliances
Events & Webinars
Innovation

Activity
Communications
Actions

BrowseMore

More blog posts in Process Integration (PI) & SOA MiddlewareWhere is this place located?
Process Integration (PI) & SOA Middleware
Previous postNext post

Store

Testing a Service Consumer Proxy


Posted by Juan Manuel in Process Integration (PI) & SOA Middleware on Oct 25, 2012 5:04:32 PM
inShare

In the previous chapter we have created a Service consumer proxy:


http://scn.sap.com/community/pi-and-soa-middleware/blog/2012/10/24/creating-a-service-consumerproxy

In this section we will see how to test a proxy. To do this we can press the
icon highlighted in the picture below (or pressing F8):

In the Test Service Consumer window, we choose the Logical Port that
we previously created from SOAMANAGER transaction code:

Change to the XML editor, and modify the default values. You can also skip
this and execute the request.

The response must display the calculation in XML mode.

Now if we want to consume the WS using ABAP, we have to enter to trx.


SE80 and create a new report:

Drag and drop the proxy class ZTESTCO_ZWS_CALCULO and youll get a
template to consume it as shown below:

Modify the template to call the WS.

Note: setting the logical port in EXPORTING parameters its not mandatory
because when we created it from SOAMANAGER trx. we checked the Logical
Port is default option.
Now we can execute it:

This is just a dummy report, but its enough to understand the basis about
how to consume a WS.

By tag:
adapter

innovative
integration

pi_7.31
pi_731

praveengujjeti
process_orchestration
sap_netweaver_pi

sap_netweaver_process_integration
sap_netweaver_process_orchestration

sap_pi
sap_process_integration
sap_process_integration_(pi)

sapmentor
sappi

Recent Posts
A step by step to apply Netweaver PI(dual-stack) https service
Renaming Email Attachment with input File Name Without Module
Sender Axis adapter to create response message for sender.
How to get a CSV file from Web page using ABAP Code in SAP PI
So Long, and Thanks for All the Fish
A brief history of SAP PI
HTML MultiPart Form upload using HTTP Plain adapter with Java mapping
FCC parameter reference for MessageTransformBean module
Open source solutions for EDIFACT
SAP PI App's in Google playstore

Incoming Links
Re: SICF: service is not available
SAP NetWeaver Process Orchestration PI | B2B | BPM | BRM on SCN - October 2012
Re: How to create a web service for the function module SXMB_GET_MESSAGE_LIST
Creating a Service Consumer Proxy

Follow SCN
Site Index
Contact Us
SAP Help Portal
Privacy
Terms of Use
Legal Disclosure
Copyright