JMS Destination Properties
05When creating or viewing details about JMS destinations, the JMS Destination Properties appear. The properties are organized across these tabs:
gateway91
When creating or viewing details about JMS destinations, the JMS Destination Properties appear. The properties are organized across these tabs:
For more information about JMS destinations, see Manage JMS Destinations.
If you are configuring Websphere as a JMS Destination, see Connect to a WebSphereJMS Provider.
To access the properties for an MQ native queue
:- Run the Manage JMS Destinations task.
- Select a destination and then click [Properties]. You can also click [Add] to create a new queue.The JMS Destination Properties appear.
- Configure each tab within the properties as necessary. Refer to the appropriate section below for a complete description of each tab.
- Click [Save] when done.
Configuring the [Basics] Tab
The [
Basics
] tab is used to set the destination direction and provider type. - Enter a name for the JMS destination. This name will be displayed in the policy window; it can be the same as the Destination Name in the [Destination] tab or it can be a descriptive label to help users more easily identity the destination. This name is required.
- Specify the Direction of the destination being configured:
- SelectOutboundto configure an outbound destination.
- Select theThis destination is a templatecheck box to configure a template outbound destination that allows certain details to be entered later, using the Route via JMS Assertion. For more information, see "Template Outbound Destinations" in Manage JMS Destinations.
- Select [Inbound] to configure an inbound destination.Selecting a direction is possible only when adding or modifying a destination using the Manage JMS Destinations task. When creating a new destination from the Route via JMS Assertion, the outbound option is always used.
- Select the JMS provider type from the drop-down list.
- ChooseGeneric JMSto connect to a JMS provider not listed.The "Generic JMS" option can be used to configure the JMS destination to work with other JMS providers not listed in the drop-down list.For example, to connect towebMethods Broker: enter the following Context Factory class name in the [JNDI] tab: com.webmethods.jms.naming.WmJmsNamingCtxFactory
- ChooseTIBCO EMSif connecting to a TIBCO Enterprise Message Service (EMS) server.
- ChooseWebSphere MQover LDAPif connecting to an IBM WebSphere MQ server using the LDAP protocol.If you are configuring an MQSeries destination with a backout destination configured, this destination will hold the messages that cannot be processed.
- ChooseWebLogic JMSif connecting to a WebLogic JMS server.When connecting to a WebLogic JMS provider, you should set the io.jmsConnectionCacheMaxSize cluster property to "0" (zero) and also set the system property com.l7tech.server.transport.jms.detectJmsTypes to true. This property must be set on each node in a cluster and theAPI Gatewaymust be restarted for the new setting to take effect.
The [Reset] button allows you to quickly set destination properties for the current provider using the predefined defaults. You will be warned if existing configuration will be overwritten. The [Reset] button is not available for Generic JMS destinations. - Optionally choose a security zone. To remove this entity from a security zone (security role permitting), choose "No security zone". For more information about security zones, see Understanding Security Zones.This control is hidden if either: (a) no security zones have been defined, or (b) you do not have Read access to any security zone (regardless of whether you have Read access to entities inside the zones).
Configuring the [JNDI] Tab
The [
JNDI
] tab is used to configure the JNDI connection properties. Note that the settings described below may not be available for all provider types.Some best practices tips for improving performance by reducing the JNDI timeout period:
- Define theweblogic.jndi.connectTimeoutproperty. Refer to the "Additional Properties" section in the table below for details.
- Increase the size of the Session Pool in the [Outbound Options] tab.
- Reduce the Max Wait setting in the "Session Pooling" section of the [Outbound Options] tab if necessary.
Setting | Description |
---|---|
Initial Context Factory class name | Enter the name of the initial context class. For outbound template destinations, you may leave this field blank to be filled in later using the Route via JMS Assertion. Examples: WebSphere MQ : com.sun.jndi.ldap.LdapCtxFactoryTIBCO EMS : com.tibco.tibjms.naming.TibjmsInitialContextFactoryWebLogic JMS : weblogic.jndi.WLInitialContextFactoryWebSphere : com.ibm.websphere.naming.WsnInitialContextFactory |
JNDI URL | Enter the address of the JNDI (Java Naming and Directory Interface) server, followed by a port number (if required). For outbound template destinations, you may leave this field blank to be filled in later using the Route via JMS Assertion. Examples: WebSphere MQ : ldap://servername.company.com/dc=companydomain,dc=comTIBCO EMS : tibjmsnaming://machinename:7222 (Important: Enter only the machine name, not the full host name—i.e., machine.company.com.) Ensure that all Gateway nodes in the cluster can access the port specified in the JNDI URL. Any firewall issues preventing access can cause unexpected timeouts. Also check if rate limiting has been applied to a port. |
Credentials are required to connect to JNDI | If login information is required, select this check box and then enter the User Name and Password. For outbound template destinations, you may select the check box and leave the credential fields blank to be filled in later using the Route via JMS Assertion. |
Use SSL (only available for Provider Type 'TIBCO EMS'') | Select this check box if you want to use an SSL connection for the JMS destination.
The following options are available once this check box is selected for Provider Type TIBCO EMS:
This option is available only when the Verify server certificate check box is selected. Normally you should verify the certificate name with the host name. You may disable this option for testing purposes, when a temporary non-production certificate is installed on the EMS server.
Private keys stored in an internal Hardware Security Module (HSM) on the API Gateway cannot be used for client certificate authentication with the TIBCO EMS server, and will not appear in the drop-down list. |
Additional Properties | Optionally define additional properties required by the JNDI connection. Note: Please consult with your administrator or CA Support to determine the need for additional properties.
Add a property named weblogic.jndi.connectTimeout with a low value. This allows JNDI connection failures to time out more quickly and reduces the number of blocking threads. This leads to a performance improvement.When not specified, the internal value is 180,000 ms. Try setting values from 1000 to 10000 . There are three retries, so this value is multiplied internally by 3 for the total timeout. |
Configuring the [Destination] Tab
The [
Destination
] tab is used to configure the JMS destination details.Setting | Description |
---|---|
Destination Type | From the drop-down list, select the destination type:
|
Connection Factory Name | Enter the JNDI Connection Factory reference name. For outbound template destinations, you may leave this field blank to be filled in later using the Route via JMS Assertion. The Connection Factory Name should be displayed if WebSphere has been correctly configured as a JMS destination. If the system property com.l7tech.server.transport.jms.detectJmsTypes is set to "true" (default), the API Gateway will try to detect the connection type (either Queue or Topic) automatically. For more information, see Gateway System Properties. |
Destination Name | Enter the destination reference name. For outbound template destinations, you may leave this field blank to be filled in later using the Route via JMS Assertion. |
Credentials are required to connect to this Destination | If this JMS destination requires login information, select this check box and then enter the User Name and Password. For outbound template destinations, you may select the check box and leave the credential fields blank to be filled in later using the Route via JMS Assertion. |
Use SSL (only available for Provider Types = 'TIBCO EMS' and 'WebSphere') | When the Provider Type is TIBCO EMS:
When the Provider Type is WebSphere MQ over LDAP:
Clear this check box if you are certain that the MQ Queue Manager does not require SSL.
The [ Use SSL ] check box assumes that the MQ Queue Manager has been correctly configured to use SSL. |
Configuring the [Inbound Options] Tab
The [
Inbound Options
] tab is used to configure details for inbound JMS destinations. Inbound JMS destinations are used by published JMS services and do not require an assertion. The JMS service publication process is the same as the publication process for a regular service. If you are publishing a service that will accept incoming messages from a JMS queue, ensure that the appropriate inbound JMS queue is monitored for the messages. JMS messages will be processed according to the assertions defined in the policy.
Setting | Description |
---|---|
Acknowledgement Behavior | From the drop-down list, select how the Gateway should acknowledge incoming JMS messages:
Using "On Completion" acknowledgement increases the reliability of message processing. If a Gateway fails during the processing of a message, that message will remain in the JMS destination and can be processed by another node. This assumes that a cluster of nodes has been configured. For more information, see Configure a Gateway Cluster. If you have not configured a failure destination or a backout destination, then messages that consistently fail (for example, a backend service is non-functional) will remain in the queue indefinitely. The Gateway will continually try to process these messages and may get stuck in a loop, unless one of the above destinations are configured. The Protect Against Message Replay assertion should not be used in any policy that will process messages from JMS destinations that are configured with the "On completion" acknowledgment mode without a specified failure destination. |
Inbound Reply Behavior | Select a JMS reply behavior for the inbound destination:
|
Request/Response Correlation | The inbound Request/Response correlation behavior can be specified if either the "Automatic" or "Send reply to specified queue" option was selected:
|
Service Resolution | Select how the service should be resolved:
If a Content-Type is not specified, the Gateway will assume type "text/xml". |
Send failed requests to the specified queue | Select this check box to route the message to a special queue if the service policy does not successfully complete. The messages sent to the failure queue are not due to a Gateway failure, but rather from other causes such as routing failure, message content, etc. If this check box is not selected, then the JMS provider configuration will be expected to ensure that messages that could not be processed do not remain in the queue indefinitely. This option is available only when Acknowledgement Behavior is set to "On Completion". |
Failure queue name | If sending requests to a failure queue, enter the name of the queue (topics are not supported) that will receive messages that were not successfully processed. |
Stop listening on this destination | Select this check box to instruct the Gateway to stop listening for messages on this JMS destination. During this stoppage, incoming client requests will accumulate in the destination until the Gateway resumes listening. When listening restarts, the Gateway will process the queued messages and send a response. |
Consumer Connections | Enter the number of JMS consumer connections permitted for a particular JMS destination, between 1 and 10000. Default: 1 (1) This setting only applies to JMS Queues, not to JMS Topics. (2) The default can be changed using the io.jmsConsumerConnections cluster property.(3) Consumer connections stay open until the "Stop listening on this destination" check box is selected. |
Override maximum message size | Select this check box to override the permitted maximum size of the routing message. Clear this check box to use the value set in the io.xmlPartMaxBytes cluster property.
|
Configuring the [Outbound Options] Tab
The [
Outbound Options
] tab is used to configure details for outbound JMS destinations. For more information on using an outbound destination in a service with JMS routing, see Route via JMS Assertion .Setting | Description |
---|---|
Outbound Reply Behavior | Specify a JMS reply behavior for the outbound destination. For a topic destination type, it is recommended that you choose the "No replies (one way)" option for an outbound topic. This will prevent errors when the Route via JMS Assertion is processed.
For outbound template destinations, you may leave this field blank to be filled in later using the Route via JMS Assertion. |
Request/Response Correlation | If waiting for a reply on a specific destination, select a Request/Response Correlation option:
|
Outbound Message Format | Select the desired output Content-Type:
|
Session Pooling Setting | Specify the JMS session pooling settings:
|