Software AG Products 10.5 | Using API Gateway | API Gateway Administration | General Configuration | Web Services Endpoint Alias | Creating an Endpoint Alias for a Provider Web Service Descriptor
 
Creating an Endpoint Alias for a Provider Web Service Descriptor
If a provider web service descriptor binder specifies the JMS transport, you must assign a web service endpoint alias to the binder. For a web service descriptor that uses SOAP over JMS, the provider web service endpoint alias provides the following information: JMS message header information for the request message, such as delivery mode, time to live, and the destination for replies. Integration Server uses this information to populate the binding elements in the WSDL generated for the web service descriptor.
The SOAP-JMS trigger that listens for SOAP over JMS messages for the web service descriptor. The SOAP-JMS trigger also provides the JMS connection information needed to create a connection on the JMS provider. Integration Server uses the information provided by the SOAP-JMS trigger to construct most of the JMS URI (the web service descriptor determines the targetService). The JMS URI appears in the WSDL document as the value of the "location=" attribute for the address element within the port element. WS Security Properties that specify the information needed by the SOAP processor to decrypt and verify the inbound SOAP request and/or encrypt and sign the outbound SOAP response and the details for adding the timestamp information.
Keep the following information in mind when creating a web service endpoint alias for a JMS binder in a provider web service descriptor:
*You can associate the web service endpoint alias with
*A SOAP-JMS trigger that already exists.
*A WS endpoint trigger that you create at the same time you create the endpoint alias.
*If you use a SOAP-JMS trigger in the web service endpoint alias and subsequently assign the alias to a JMS binder in a provider web service descriptor, the web service descriptor has a dependency on the SOAP-JMS trigger. Consequently, at start up or when reloading the package containing the web service descriptor, API Gateway must load the SOAP-JMS trigger before loading the web service descriptor. If the SOAP-JMS trigger and web service descriptor are not in the same package, you need to create a package dependency for the package that contains the web service descriptor on the package that contains the SOAP-JMS trigger.
*If you rename the SOAP-JMS trigger assigned to an alias, you need to update the alias to use the renamed trigger.
*To create a provider web service endpoint alias for use with JMS
1. Expand the menu options icon , in the title bar, and select Administration.
2. Select General > Web services.
API Gateway displays a list of all the currently defined endpoint aliases.
3. Click Add web service endpoint alias.
4. In the Webservice endpoint alias properties section, provide the following information:
Field
Description
Alias
Name of the JMS provider web service endpoint alias.
The alias name cannot include the following special characters: # ©\ & @ ^ ! % * : $ . / \ \ ` ; , ~ + = ) ( | } { ] [ > < "
Description
A description for the endpoint alias.
Type
Specifies the type - Provider
5. In the JMS transport properties section, provide the following information:
Field
Description
Delivery mode
The message delivery mode for the request message.
This is the delivery mode that web service clients must specify in the JMS message that serves as the request message for the web service.
You can select one of the following modes:
*PERSISTENT. Specifies that the request message should be persistent. The message is not lost if the JMS provider fails.
*NON_PERSISTENT. Specifies that the request message is not persistent. The message might be lost if JMS provider fails.
Time to live
The number of milliseconds that can elapse before the request message expires on the JMS provider.
If you specify a value 0, it indicates that the message does not expire.
Priority
Specifies the message priority.
The JMS standard defines priority levels from 0 to 9, with 0 as the lowest priority and 9 as the highest.
Reply to name
Name or lookup name of the destination to which the web service sends a response (reply) message.
Specify a name if the JMS connection alias used by the SOAP-JMS trigger connects to the webMethods Broker natively. Specify a lookup name if the JMS connection alias uses JNDI to retrieve a connection factory that is then used to connect to the JMS provider.
Reply to type
Type of destination to which the web service sends the response (reply) message.
Specify the destination type if the following are true:
*The web service descriptor to which the endpoint alias is assigned use the In-Out message exchange pattern.
*The JMS connection alias specified by the SOAP-JMS trigger connects to the webMethods Broker natively. On the webMethods Broker, a queue and topic can have the same name. You must specify Reply To Type to indicate to which destination the reply will be sent.
Select one of the following destination types:
*Queue. Specifies that the web service sends the response message to a particular queue.
*Topic. Specifies that the web service sends the response message to a particular topic.
6. In the JMS WSDL options section, provide the following information:
Field
Description
Include connection factory name
When selected, includes the connection factory name in the JMS URI.
Include JNDI parameters
When selected, includes the JNDI parameters in the JMS URI.
Note:
The JMS URI appears in the WSDL document as the location attribute value for the address element contained within the port element.
7. In the WS security properties section, provide the following information:
Field
Description
Keystore alias
Alias of the keystore containing the private key used to decrypt the inbound SOAP request or sign the outbound SOAP response.
Note:
The provider must have already given the consumer the corresponding public key.
Key alias
Alias of the private key used to decrypt the request or sign the response.
The key must be in the keystore specified in Keystore alias.
Truststore alias
The alias for the truststore that contains the list of CA certificates that API Gateway uses to validate the trust relationship.
Timestamp precision
Specifies whether the timestamp is precise to the second or millisecond.
If you set the precision to milliseconds, API Gateway uses the timestamp format yyyy-MM-dd'T'HH:mm:ss:SSS'Z'. If you set the precision to seconds, API Gateway uses the timestamp format yyyy-MM-dd'T'HH:mm:ss'Z'.
If you do not select a precision value, API Gateway uses the value specified for the watt.server.ws.security.timestampPrecisionInMilliseconds parameter.
Timestamp time to live (seconds)
Specifies the time-to-live value for the outbound message in seconds.
API Gateway uses the time-to-live value to set the expiry time in the Timestamp element of outbound messages. The Timestamp Time to Live value must be an integer greater than 0.
If you do not specify a Timestamp time to live value, API Gateway uses the value specified for the watt.server.ws.security.timestampTimeToLive parameter.
Note:
The Timestamp time to live value should be greater than the Time to live value specified under JMS transport properties.
Timestamp maximum skew (seconds)
Specifies the maximum number of seconds that the web services client and host clocks can differ and still allow timestamp expiry validation to succeed.
Specify a positive integer or zero.
API Gateway uses the timestamp maximum skew value only when you implement WS-Security via a WS-Policy. API Gateway validates the inbound SOAP message only when the creation timestamp of the message is less than the sum of the timestamp maximum skew value and the current system clock time.
If you do not specify a timestamp maximum skew value, API Gateway uses the value specified for the watt.server.ws.security.timestampMaximumSkew parameter.
8. Click Add.
The web service endpoint alias created is listed in a table under Web service endpoints list.