Show TOC

Procedure documentationConfiguring Individual Web Service Clients Locate this document in the navigation structure

 

A logical port is a reference to a service endpoint available at a unique service endpoint URL on the provider system. That is why, you create a logical port based on the service endpoint URL of the respective service endpoint. You can create a logical port in any of the following ways:

  • Based on the location of the WSDL document (WSDL URL) of the service, which holds the service endpoint of a configured service definition.

    The WSDL document of the service contains the service endpoint URLs of all the service endpoints grouped into the service. You can take the WSDL URL of the WSDL document from the details of the service definition (see the Prerequisites below).

  • Manually, by using the exact location of a particular endpoint (service endpoint URL).

    The endpoint URL is available in the WSDL document of a service. It is displayed in the location property of a port as the code excerpt below shows:

    Syntax Syntax

    1. <service xmlns="http://schemas.xmlsoap.org/wsdl/" name="service name">
       <port name="endpoint name" xmlns:bref="http://ip.test/" binding="bref:DefaultService_">
        <address xmlns="http://schemas.xmlsoap.org/wsdl/soap/" location="endpoint URL" />
       </port>
      </service>
    End of the code.

    Note Note

    For every consumer proxy deployed on the application server, by default system creates a logical port. This logical port points to the URL on which the Web service was available when the proxy was generated for that Web service (Normally, this would be a development or a test system, not a productive one). If you want to use this "default" logical port, you have to manually edit by setting the service endpoint URL of the service endpoint that you want the logical port to call.

    End of the note.

Prerequisites

  • To create a logical port based on the location of a WSDL document, you need the following information:

    • The URL to the WSDL document of the service.

      You have to use the URL to the WSDL of a configured service definition. It contains the settings of the service definition in the form of policy assertions compliant with the WS-Policy standard. You can copy the WSDL URL from the details about the service definition. It ends with the following parameter: mode=ws_policy.

      More information: Managing WSDL Documents.

    • The name of the service endpoint for which you want to create a logical port.

  • To create a logical port manually by using the service endpoint URL directly, you have to know the service endpoint URL.

Procedure

Finding Consumer Proxies
  1. Log on to the SAP NetWeaver Administrator.

  2. Choose   SOA Management   Application and Scenario Communication   Single Service Administration  .

    Alternatively, you can use the quick link /ssadmin as follows:

    http://<host>:<port>/nwa/ssadmin

    The Single Service Administration screen opens.

  3. Find the consumer proxies that you want to configure. Proceed as follows:

    • Search for consumer proxies by name (basic)

      1. Choose the Search tab, and then choose Basic.

        The basic search mode is enabled if the Advanced switch is displayed on the Add Services window.

      2. In the Find field, enter a consumer proxy name.

        You can use an asterisk (*), or a question mark (?), as wildcards in the search string.

      3. In the Search by dropdown menu, select the search method you want to use.

        The table below outlines the meaning of each state.

        Search Item

        Meaning

        WSDL Porttype Name

        This option enables search by the porttype name of the consumer proxy, included in the WSDL document.

        Internal Name

        This option enables search by the internal name with which the consumer proxy is deployed on the system.

      4. In the State dropdown menu, choose the state of the consumer proxy.

        The table below outlines the meaning of each state.

        State

        Meaning

        Activated/Deployed

        The consumer proxy does not have a callable logical port with runtime configuration settings.

        Configured

        The consumer proxy has a callable logical port with runtime configuration settings.

      5. Choose Go.

    • Search for consumer proxies by name (advanced).

      1. Choose the Search tab, and then choose Advanced.

        The advanced search mode is enabled if the Basic switch is displayed on the Add Services window.

      2. In the Find, Search by, and State fields, enter the basic search criteria.

      3. Choose a consumer proxy classification from the Select Classification dropdown menu.

      4. Choose a classification from the tables, and then add or remove it using the arrows.

      5. Choose Go.

    • Browse consumer proxies by classification.

      1. Choose the Browse tab.

      2. From the dropdown menu, select a consumer proxy classification. The system lists all available consumer proxies, which match your search criteria.

    The system lists all available consumer proxies that match your search criteria.

  4. Choose the consumer proxy you want to configure, and choose the Configuration tab.

    You can create and configure a new logical port or edit an existing one.

Creating a Logical Port
  1. Choose the New button.

  2. Choose the source of the endpoint URL that you want to use. The following options are available:

    • WSDL URL

      The system automatically extracts the endpoint URL from the WSDL document of a service.

      1. Choose Import from WSDL URL, and then choose Next.

      2. At the WSDL URL step, enter the path to the WSDL document, and then enter a user name and a password, and then choose Next.

      3. At the Service Endpoint step, choose the name of the endpoint for which you want to create a logical port, and then choose Next.

      4. At the Details step, the Logical PortName and the Web Service EndpointURL fields are automatically populated with the name of the service endpoint, and the service endpoint URL. Proceed as follows:

        1. Choose Set as default if you want to mark the logical port as the default one. In this case, if the consumer application is not designed to call a specific logical port for a service, it calls the logical port marked as default.

        2. Set the necessary runtime configuration settings.

          The Configuration Options for LogicalPorts section below explains the runtime settings you can apply for the logical ports.

      5. Choose Save.

    • Enter Manually

      The system uses the exact endpoint URL to create a logical port.

      1. Choose Enter Manually, and then choose Next.

      2. At the Details step, proceed as follows:

        1. Enter a unique name for the logical port.

        2. Choose Set as default if you want to mark the logical port as the default one. In this case, if the consumer application is not designed to call a specific logical port for a service, it calls the logical port marked as default.

        3. In the WS EndpointURL field, enter the endpoint URL.

        4. Set the necessary runtime configuration settings.

          The Configuration Options for LogicalPorts section below explains the runtime settings you can apply for the logical ports.

      3. Choose Save.

Editing a Logical Port
  1. In the Logical Ports table, choose a logical port, and then choose Edit.

    Note Note

    If you want to edit logical port that the system created during the deployment of the consumer proxy, you have to manually edit its current service endpoint URL. You have to provide the URL to a service endpoint in your landscape.

    End of the note.
  2. To edit the Web service endpoint URL, choose the Details tab, and then in the WS Endpoint URL field, enter a valid service endpoint URL.

  3. Set the necessary runtime configuration settings.

    The Configuration Options for Logical Ports section below explains the runtime settings you can apply for the logical ports.

  4. Choose Save.

Configuration Options for Logical Ports

On the tabs that open, set the configuration settings that suit your requirements.

  • Configure Web service Security.

    Caution Caution

    Currently, it is not possible to configure a consumer proxy to use WS-RM together with Web service SecureConversation (WS-SC). You have to either configure WS-RM, or enable the use of WS-SC for a consumer proxy.

    On the Security tab, specify the relevant options.

    End of the caution.

HTTP Authentication

Option

Description

User ID/Password (Basic)

Authentication with user ID and password in HTTP header

More Information: Authentication at HTTP Transport Level

User ID/Password (Digest)

Username and password based authentication, in which the password is encrypted.

More Information: Basic Authentication (User ID and Password)

X.509 Client Certificate

Authentication with an X.509 certificate using Secure Sockets Layer (SSL).

More Information: Authentication at HTTP Transport Level

Logon Ticket

Authentication with SAP authentication assertion ticket in the HTTP header, which authenticates the identity of the user.

More Information: Authentication at HTTP Transport Level

Message Authentication

Option

Description

User ID/Password (Basic)

Authentication with a WS-Security Username Token in the security header of the SOAP message.

User ID/Password (Digest)

Username and password based authentication, in which the password is encrypted.

More Information: Basic Authentication (User ID and Password)

X.509 Client Certificate

Authentication with an X.509 certificate using Secure Sockets Layer (SSL).

More Information: Authentication at HTTP Transport Level

SAML Assertion

Authentication with a signed SAML 1.1 assertion in the message header, which authenticates the identity of the user.

  • Configure Transport Settings

    On the TransportSettings tab you specify the transport between the provider side and the consumer side. The table below lists the available options and explains their meaning.

    Option

    Description

    Use 'Connection: KeepAlive' http header

    Enables multiple requests and responses through a single HTTP connection. The provider system keeps the connection alive so that you can use the same connection for multiple request and response cycles.

    Support gzip responses

    Enables the provider side to return compressed responses to the consumer and in this way improves performance. This option is useful when you expect the provider to return responses whose size is several megabytes.

    Note Note

    If you want to set this option, the provider system has to support compressed responses (gzip).

    End of the note.

    Max wait-time for http response

    Denotes how long the consumer waits for a response from the provider. If you expect huge load on the provider system that would delay the responses to consumers, Increase the default value.

    Issue chunked requests

    Optimizes the method in which the client communicates to the provider the size of it own requests. If the option is selected, the client communicates the size of the message directly in the stream, and does not write it in memory.

    Local transport

    Optimizes the way in which the Web service client communicates with the Web service when both reside on a same system. If the option is selected, the client calls the service directly. The system does not create a dedicated http connection as a communication channel and does not obey any explicitly configured security settings. Instead, to consume the service, the client uses the same credentials and thread, with which you invoked the client.

    Note Note

    You configure Local transport only for Web service clients, which are created for Local transport enabled Web services.

    End of the note.
    • Configure Web service addressing

      On the Web ServiceAddressing tab, specify the protocol for Web service Addressing.

    • Configure stateful communication

      On the StateManagement tab, choose the method for session handling. Currently, only HTTP cookies are supported.

    • Configure Web Service Reliable Messaging

      You configure WS-RM on the Messaging tab. The messaging tab appears only for Web service clients created for WS-RM-enabled Web services.

      On the Messaging tab, set the relevant options. The table below lists the available options and explains their meaning.

      Caution Caution

      Currently, it is not possible to configure a consumer proxy to use WSRM together with Web service SecureConversation (WS-SC). You have to either configure WSRM, or enable the use of WS-SC for a consumer proxy.

      End of the caution.

      Option

      Description

      RM Protocol

      Sets the protocol for reliable messaging.

      ExponentialBackoff

      Exponential backoff sets an algorithm used by the client when it resends messages. If you choose this option, the retransmission interval increases exponentially after each unsuccessful transmission.

      Retransmission interval

      The interval at which the Web service client will try to resend each message that has not been acknowledged by the Web service.

      Inactivity Timeout

      If the Web service receives no messages within this interval, it considers the sequence terminated due to the lack activity.

      Lifetime of a sequence

      The time period for which a sequence remains active.

    • Configure Idempotency

      The Idempotency enables Web service operations to safely control multiple requests from Web service clients. Before sending the idempotent operation request to the Web service, the Web service client saves the request on the consumer system under a unique ID. At a later stage, if the provider system does not respond, the consumer system resends the request automatically. The retransmission continues until the Web service client receives a response or until the number of retries expires.

      Caution Caution

      You configure idempotency settings on the Idempotency tab. The Idempotency tab appears only for Web service clients created for idempotency enabled Web services.

      End of the caution.

      On the Idempotency tab, set the relevant options. The table below lists the available options and explains their meaning.

      Option

      Description

      Enable idempotency

      Enables idempotency for the particular Web service client.

      Retries count

      Sets the number of retries of an idempotent request.

      Retry interval (in milliseconds)

      The interval at which the Web service client will try to resend the idempotent request for which the Web service has not returned a response.

    • Configure service metering settings. More information: Service Metering

      • In the Data transfer scope screen area, choose the amount of service metering data transferred:

        • Choose Minimal Data Transfer when you want the consumer application to send only Calling Application Type to the provider.

        • Choose Basic Data Transfer when you want the consumer application to send Calling Application Type, Calling Component, and Calling Application ID to the provider.

        • Choose Enhanced Data Transfer when you want the consumer application to send all caller information attributes to the provider.

        Caution Caution

        Increasing the service metering level may lead to a security risk. When choosing the amount of service metering data you should consider the trustworthiness of the Web service provider:

        • If you don't have information on where and how the Web service is provided you should choose the Minimal Data Transfer level.

        • When you are sure that the Web service is provided by a trustworthy party you can increase the service metering level. For example, you can do this for service providers residing in your internal network.

        End of the caution.
      • In the Transfer Protocol screen area, choose the protocol you want to use for transfer of service metering data.