Adding a New Target Operation

To add a new target operation, follow these steps:

Procedure

  1. Click the Target Operations tab.
  2. Click the Add property icon to create a new facade operation.
  3. Enter the configuration parameters for target operation, as follows:
    Target Operation Configuration Parameters
    Parameter Description
    Type: No Operation

    Specifies an empty target operation. This does not accept any messages. This type is used for the operations that use the information retrieved during customer validation.

    Operation Name The name of the target operation.
    Type The type of transport to use when accessing the target operation.

    For example, No Operation.

    Target Operation Group The name of the Target Operation group. See Target Operation Groups to configure a target operation group.
    Timeout Timeout (in milliseconds) to use when accessing the target operation.
    Request Transform The mapping from request canonical form to the target operation API. The mapping details are defined in MAPPING > Mapping tab.
    Response Transform The mapping from back-end service API to response canonical form. The mapping details are defined in MAPPING > Mapping tab.
    Monitor(s) Throttle chain to be applied when invoking the back-end service. You can add one or more throttle names. The details of the throttles are defined in the MONITORING > Monitors tab.
    Type: ESB

    When the JMS transport is used to invoke the target operation, configure the following parameters specific to JMS transport:

    ESB Channel The number of predefined ESB channels. By default, three ESB channels are supported, this field can have the values as 0, 1,2.

    You can add more ESB Channels by customizing ASG_DefaultImplementation project.

    ESB Service The name of the ESB service to call.

    This is an additional header value added to the outgoing JMS message if specified. The header name in the JMS message is mentioned as Service.

    Service Instance The identity of service instance to call.

    This is an additional header value added to the outgoing JMS message if specified. The header name in the JMS message is mentioned as ServiceInstance.

    ESB Operation Specifies the ESB called operation. This is an additional header value added to the outgoing JMS message if specified. The header name in the JMS message is mentioned as Operation.

    Note that this tuple determines SOAP Action used by ESB as: "/esb/service//operation”

    Destination Name The name of the queue or topic for the JMS channel used to override the default JMS destination. The default destination is specified by the global variables tibco.clientVar.ASG/Endpoint/ESB0/requestQueue, tibco.clientVar.ASG/Endpoint/ESB1/requestQueue, tibco.clientVar.ASG/Endpoint/ESB2/requestQueue in ASG_CONFIG_HOME/asg.properties file respectively.

    Optional.

    Destination Type The type of the destination for JMS channel.

    The default value is queue.

    Optional.

    Mode Specifies a mode for a back-end JMS service. The valid values are SYNC/ASYNC.

    For the sync mode, the gateway waits for the southbound response from the target operation after the southbound request is sent to the target operation. This is the default mode.

    For the async mode, the gateway does not wait for the southbound response from the target operation after the southbound request is sent to the target operation. A default northbound response payload is created after the async request is sent to the target operation.

    Type: HTTP

    When the HTTP transport is used to invoke the target operation, configure the following parameters specific to HTTP transport:

    SOAP Action The value of the SOAP Action as defined by the WSDL of the target operation API.
    URI Specifies the URI to use when invoking the target operation.
    Host The IP address or hostname of the target operation implementation when invoked over HTTP.
    Port The TCP port of the target operation implementation when invoked over HTTP.
    Username The username with BASIC authentication.
    Password The password with BASIC authentication.
    Headers To Forward Using this field, you can copy the HTTP headers information from the northbound incoming request (facade operation) and forward it to the target operation at the southbound side. This field can contain the following characters:
    • A comma separated list of named HTTP header names.

      You can specify any header name from the incoming HTTP request such as content-type, soap-action, and content-length.

    • An asterix (*) as the wildcard symbol to forward all HTTP headers from the facade service request to the target reference request.
    • An asterix (*) as the wildcard symbol in combination with a comma separated list of named HTTP header names prefixed with the-sign to drop these specific HTTP headers from the list of headers to forward.
    • apikey as the keyword to forward api key.
    • {query_string} as the keyword to forward the query string.

    For example,

    • If the value of Headers To Forward field is specified as *, then all the headers are copied.
    • If the Headers To Forward field contains "*,-SoapAction", any incoming SOAP Action header is removed from the incoming headers and the value set on the endpoint is ignored.

    The default value is *, -apikey which copies all the HTTP headers except the apikey to the target operation request at the southbound side.

    Note: According to HTTP/1.1 RFC, HTTP headers are case-insensitive. The native HTTP channel of API Exchange uses Apache Tomcat which enforces this behavior by converting all headers to lower case. We recommend that application developers must not depend on case sensitive headers in their application logic.
    Method Specifies the method to be used as an HTTP method for sending a southbound request over the HTTP transport.

    The following methods are available for the HTTP transport:

    OPTIONS, GET, HEAD, POST, PUT,DELETE,TRACE,CONNECT

    The default value is POST

    Retry Count The number of retries.
    Retry Interval The interval between the HTTP connection retries. A value of 0 indicates no retry.
    Retry Timeout The timeout value on each attempt of HTTP connection. This value is specified in milliseconds. A value of 0 indicates no timeout.
    Communications Type Specifies a mode for a back-end HTTP service. The valid values are SYNC/ASYNC.

    For the sync mode, the gateway waits for the southbound response from the target operation after the southbound request is sent to the target operation. This is the default mode.

    For the async mode, the gateway does not wait for the southbound response from the target operation after the southbound request is sent to the target operation. A default northbound response payload is created after the async request is sent to the target operation.

    Type: SOAPJMS

    When the SOAPJMS transport is used to invoke the back-end service, configure the following parameters specific to SOAPJMS transport:

    SOAP Action The value of the SOAP Action as defined by the WSDL of target operation.
    JMS Priority The value of JMSPriority header to set in the outgoing JMS message.
    JMS Expiration The value of JMSExpiration header to set in the outgoing JMS message.
    Destination Name The name of the destination on JMS server.
    Destination Type The type of the destination (TOPIC/QUEUE).
    Target Service The name of the service to call.
    Content Type The value of JMSType header to set in the outgoing JMS message
    Is Async  
    Type: HTTPS

    When the HTTPS transport is used to invoke the target operation, configure the following parameters specific to HTTPs transport:

    SOAP Action The value of the SOAP Action as defined by the WSDL of the target operation.
    URI The URI to use when invoking the target operation.
    Host The IP address or host name of the target operation implementation when invoked over the HTTPS.
    Port The TCP port of the target operation implementation when invoked over HTTPS.
    Username Username with BASIC authentication.
    Password Password with BASIC authentication.
    Headers To Forward Using this field, you can copy the HTTP headers information from the northbound incoming request (facade operation) and forward it to the target operation at the southbound side. This field can contain the following characters:
    • A comma separated list of named HTTP header names.

      You can specify any header name from the incoming HTTP request such as content-type, soap-action, and content-length.

    • An asterix (*) as the wildcard symbol to forward all HTTP headers from the facade service request to the target reference request.
    • An asterix (*) as the wildcard symbol in combination with a comma separated list of named HTTP header names prefixed with the-sign to drop these specific HTTP headers from the list of headers to forward.
    • apikey as the keyword to forward api key.
    • {query_string} as the keyword to forward the query string.

    For example,

    • If the value of Headers To Forward field is specified as *, then all the headers are copied.
    • If the Headers To Forward field contains "*,-SoapAction", any incoming SOAP Action header is removed from the incoming headers and the value set on the endpoint is ignored.

    The default value is *, -apikey which copies all the HTTP headers except the apikey to the target operation request at the southbound side.

    Note: According to HTTP/1.1 RFC, HTTP headers are case-insensitive. The native HTTP channel of API Exchange uses Apache Tomcat which enforces this behavior by converting all headers to lower case. We recommend that application developers must not depend on case sensitive headers in their application logic.
    Method Specifies the method to be used as a HTTP method for sending a southbound request over the HTTPS transport.

    The following methods are available for the HTTPS transport:

    OPTIONS, GET, HEAD, POST, PUT,DELETE,TRACE,CONNECT

    The default value is POST

    Retry Count The number of retries.
    Retry Interval The interval between the HTTPS connection retries. A value of 0 indicates no retry.
    Retry Timeout The timeout value on each attempt of the HTTP connection. This value is specified in milliseconds. A value of 0 indicates no timeout.
    New Property File Specifies the DSS properties file to use the HTTPs transport for target operation. See Define DSS Properties for Services.
    Existing Property Files Specifies an existing DSS property file from the drop-down list if the file exists in the wss directory of the project configuration.
    Is Anonymous This field is a Boolean field and determines if the client authentication is required or not. The client authentication, also known as mutual SSL authentication is required if the Is Anonymous flag is set to false. If the Is Anonymous flag is set to true,the service does not require the authentication of the client.

    See Configure Secure Services with TIBCO API Exchange Gateway for details.