How to Configure a Service Provider in a Simplified Way
SOA Manager offers an accelerated method to configure an ABAP Web Service provider via its service definitions with a reduced set of configuration options and is called (Simple Consumer Support Provider SCSP). It is intended to support simple Web Service consumers that are not able to parse WSDL documents, e.g. consumers that are integrated into a client front end office applicaton.
You need the authorizations of the security role SAP_BC_WEBSERVICE_CONFIGURATOR to work with simplified Web service configuration.
More information: SAP Note 1318883 (Introduction of new authorizations in Web Service)
The following constraints apply to simplified Web service configuration:
The following authentication methods are supported:
To be able to use the full set of configuration options, use Web Service Configuration. Choose Service Administration → Web Service Configuration.
To manually configure a Web Service provider using simplified Web service configuration, perform the following steps.
- Start Transaction SOA Manager.
or use the transaction code SOAMANAGER.
- Go to the Service Administration tab.
- Choose Simplified Web Service Configuration.
The search screen is displayed.
- Search for or specify a valid service definition name.
In the example here, we will use the service definition named SRT_TEST_PROVIDER.
- Choose Go.
The service definition is displayed with the configuration options.
Select the authentication method you want to assign to the Web Service provider
You can choose the following settings:
User Name / Password (Basic)
This option can be set without the need for any additional configuration.
X.509 Client Certificate
Additional configuration for a working certificate infrastructure is needed.
SAP Assertion Ticket
Single Sign-On using SAP Assertion Tickets
Additional configuration is needed.
More information: See SAP Note 138498 (Single-Sign-On Solutions)
At least one authentication option needs to be selected for a binding to be created. If you want to remove an already existing (simplified) binding you need to uncheck all options.
When the configuration is saved, an active binding gets created. If you have selected more than one service definition, i.e. more than one service definition is displayed (you have seached via a generic service name pattern and got more than one hit), then all displayed service definitions are taken into account on generating a simplified binding.
You get a message that shows you how many configurations got generated, removed or failed. Details about each single change are displayed in the Recent Changes section, which gets displayed after the save was performed.
With the Simplified Web Service Configuration, you can only create one binding in this way for a service definition. That does not mean, that you can only generate one binding per service definition: It is still possible to generate independently additional bindings via the Web Service Configuration tab for each service definition.
To display the complete binding information, perform the following steps:
1. Go to the Web Service Administration tab.
2. Choose Web Service Configuration.
3. Specify the service definition (here we use SRT_TEST_PROVIDER).
4. Choose Go.
5. Select the row with the service definition and choose Apply Selection.
6. Go to the Configurations tab.
7. Select the row with the creation type Simple consumer related.
8. Choose Display.
The authentication options that you set for the simplified Web service are displayed in the Authentication section of the security tab.
Note that a simplified configuration cannot be changed in this view, but is controlled via the simplified SOAMANAGER's view only.
To display directly information of the simplified provider configuration, you may select the row with the service definition name and choose Show Details.
A dialog box is displayed only if a configuration has already been saved.
The WSDL and access URLs of the simplified Web Service provider are displayed.
There are two options for WSDL document shown, one with WS Policy Information and one without WS Policy information. Except for the WS Policy information, the two WSDL documents are identical. You can choose the displayed link to see the details of the WSDL documents in a new browser window. The Access URL field displays the address to which the SOAP request is sent. This URL is also contained in the WSDL document itself. This URL remains the same even if the configuration details (authentication method) gets changed.
You can display information about the WSDL documents in the SOAMANAGER's Web Service Configuration view. In that view, you have additional options of displaying the WSDL documents available via the tray labelled WSDL Generation.
- Choose OK to close the detail's dialog box.
- To display changes made to a service definition, select the row and choose Show Changes.
An overview of changes to the configuration is displayed.
The Recent Changes section displays a confirmation that the configuration was activated, and the name of the binding that was automatically created. If multiple service definitions are displayed and got changed via the Save from above, the Recent Changes section displays the information for all or only the selected service definition.
To use program code to configure providers using simplified Web service configuration, perform the following steps.
- To set the default authentication values for the Simple Client Provider API, go to the API Settings tab.
Here, you can decide whether to allow programs to automatically create bindings, and which authentication options to apply.
Select the settings you want to become the defaults for the API.
The options are the same as for the service definition configuration via the SOAMANAGER's view and have the same effect.
These options cannot be overridden by a program that uses the API, but are taken as set in this API defaults view.
If you deselect all the options, a program cannot automatically create a binding due to missing authentication method information.
- Choose Save.
The default values for the API are now saved and can be used via the API.
- Enable a Service via the API
Disable a Service via the API
The access to these APIs is done via the Web Service public factory method CL_SRT_PUBLIC_FACTORY=>GET_SERVICE_DEFINITION_HANDLER( ).
Examples of Using the API
Enable a Web Service.
data l_sdef_name type srt_wsp_dt_obj_name. data lr_sdef_deploy type ref to if_srt_public_sdef_deployment. lr_sdef_deploy ?=cl_srt_public_factory=>get_service_definition_handler(). l_sdef_name = |SRT_TEST_PROVIDER|. " a fixed service definition sample! lr_sdef_deploy->enable_service_definition_sc( l_sdef_name ).
Disable a Web Service.
data l_sdef_name type srt_wsp_dt_obj_name. data lr_sdef_deploy type ref to if_srt_public_sdef_deployment. lr_sdef_deploy ?=cl_srt_public_factory=>get_service_definition_handler(). l_sdef_name = |SRT_TEST_PROVIDER|. " a fixed service definition sample! lr_sdef_deploy->disable_service_definition_sc( l_sdef_name ).
Enabling will only work if API default values have first been set in SOA Manager.
For more information about configuring a (simplified) Web Service, you may read the following SAP Notes.
Please update the links to the OSS notes with the following, respectively:
The current links are displayed as a "potentially harmful website" on my browser, potentially because of an expired SSL cert. Nonetheless, they should point to the official SAP OSS Notes.
Thanks for the notification, I've updated the links.
You missed a couple references to the same links near the top and middle of the article, but thanks for changing those at the end.
You are right again, updated those as well Thanks!