Defines a JMS connection factory configuration.

Name Type Default Description

connectionManagerRef

A reference to top level connectionManager element (string).

Connection manager for a connection factory.

containerAuthDataRef

A reference to top level authData element (string).

Default authentication data for container managed authentication that applies when bindings do not specify an authentication-alias for a resource reference with res-auth=CONTAINER.

id

string

A unique configuration ID.

jaasLoginContextEntryRef

A reference to top level jaasLoginContextEntry element (string).

JAAS login context entry for authentication. If updated while the server is running, the update is applied with new connection requests; in-use connections are not impacted.

jndiName

string

JNDI name for a resource.

recoveryAuthDataRef

A reference to top level authData element (string).

Authentication data for transaction recovery.

connectionManager

Connection manager for a connection factory.

Name Type Default Description

agedTimeout

A period of time with second precision

-1

Amount of time before a connection can be discarded by pool maintenance. A value of -1 disables this timeout. A value of 0 discards every connection, which disables connection pooling. Specify a positive integer followed by a unit of time, which can be hours (h), minutes (m), or seconds (s). For example, specify 30 seconds as 30s. You can include multiple values in a single entry. For example, 1m30s is equivalent to 90 seconds.

connectionTimeout

A period of time with second precision

30s

Amount of time after which a connection request times out. A value of -1 disables this timeout, meaning infinite wait. A value of 0 is immediate, meaning no wait. Specify a positive integer followed by a unit of time, which can be hours (h), minutes (m), or seconds (s). For example, specify 30 seconds as 30s. You can include multiple values in a single entry. For example, 1m30s is equivalent to 90 seconds.

maxIdleTime

A period of time with second precision

30m

Amount of time a connection can be unused or idle until it can be discarded during pool maintenance, if doing so does not reduce the pool below the minimum size. A value of -1 disables this timeout. Specify a positive integer followed by a unit of time, which can be hours (h), minutes (m), or seconds (s). For example, specify 30 seconds as 30s. You can include multiple values in a single entry. For example, 1m30s is equivalent to 90 seconds.

maxPoolSize

int
Min: 0

50

Maximum number of physical connections for a pool. A value of 0 means unlimited. The optimal setting depends on the application characteristics. For an application in which every thread obtains a connection to the database, you might start with a 1:1 mapping to the `coreThreads` attribute.

minPoolSize

int
Min: 0

Minimum number of physical connections to maintain in the pool. The pool is not pre-populated. Aged timeout can override the minimum.

purgePolicy

  • EntirePool

  • FailingConnectionOnly

  • ValidateAllConnections

EntirePool

Specifies which connections to destroy when a stale connection is detected in a pool.
EntirePool
When a stale connection is detected, all connections in the pool are marked stale, and when no longer in use, are closed.
FailingConnectionOnly
When a stale connection is detected, only the connection which was found to be bad is closed.
ValidateAllConnections
When a stale connection is detected, connections are tested and those found to be bad are closed.

reapTime

A period of time with second precision

3m

Amount of time between runs of the pool maintenance thread. A value of -1 disables pool maintenance. Specify a positive integer followed by a unit of time, which can be hours (h), minutes (m), or seconds (s). For example, specify 30 seconds as 30s. You can include multiple values in a single entry. For example, 1m30s is equivalent to 90 seconds.

Advanced Properties

autoCloseConnections

boolean

true

Attempts to clean up after applications that leave connections open after the end of a servlet request, enterprise bean instance, managed executor task, contextual task, or managed completion stage. When an unsharable connection is obtained within one of these application artifacts and remains open when it ends, the container attempts to close the connection handle. The container may also close sharable connections that do not support DissociatableManagedConnection. Applications should always follow the programming model defined by the specification and close connections at the appropriate times rather than relying on the container, even when this option is enabled.

enableContainerAuthForDirectLookups

boolean

false

If set to true, connections use container authentication. If set to false, connections use application authentication.

enableSharingForDirectLookups

boolean

true

If set to true, connections are shared. If set to false, connections are unshared.

maxConnectionsPerThread

int
Min: 0

Limits the number of open connections on each thread.

numConnectionsPerThreadLocal

int
Min: 0

Caches the specified number of connections for each thread. This setting can provide a performance improvement on large multi-core (8+) machines by reserving the specified number of database connections for each thread. For best performance, if you have n applications threads, set the maximum pool connections to at least n times the value of the numConnectionsPerThreadLocal attribute. Use the same credentials for all connection requests. For example, if you use 20 application threads, set the maximum pool connections to 20 or more. If you set the value of numConnectionPerThreadLocal attribute as 2 and you have 20 application threads, set the maximum pool connection to 40 or more. If setting numConnectionsPerThreadLocal does not improve performance due to application connection usage patterns that do not benefit from using numConnectionsPerThreadLocal, remove the attribute from configuration or set the value to 0.

containerAuthData

Default authentication data for container managed authentication that applies when bindings do not specify an authentication-alias for a resource reference with res-auth=CONTAINER.

Name Type Default Description

krb5Principal

string

The name of the Kerberos principal name or Kerberos service name to be used.

krb5TicketCache

Path to a file

The file location where Kerberos credentials for the Kerberos principal name or service name will be stored. Also known as the Kerberos credential cache (ccache)

password

Reversably encoded password (string)

Password of the user to use when connecting to the EIS. The value can be stored in clear text or encoded form. It is recommended that you encode the password. To do so, use the securityUtility tool with the encode option.

user

string

Name of the user to use when connecting to the EIS.

jaasLoginContextEntry

JAAS login context entry for authentication. If updated while the server is running, the update is applied with new connection requests; in-use connections are not impacted.

Name Type Default Description

loginModuleRef

List of references to top level jaasLoginModule elements (comma-separated string).

hashtable,userNameAndPassword,certificate,token

A reference to the ID of a JAAS login module.

name

string
Required

Name of a JAAS configuration entry.

properties.wasJms

A JMS connection factory is used to create connections to the associated JMS provider of JMS destinations, for both point-to-point and publish/subscribe messaging.

Name Type Default Description

busName

string

defaultBus

The name of a bus when connecting to the service integration bus in WebSphere Application Server traditional.

clientID

string

clientID

The JMS client identifier needed for durable(and for shared non-durable) topic subscriptions on all connections. This identifier is required if the application is doing durable(and for shared non-durable) publish/subscribe messaging.

durableSubscriptionHome

string

defaultME

Durable subscription home defines ME name to which connection needs to be established.

nonPersistentMapping

  • BestEffortNonPersistent

  • ExpressNonPersistent

  • ReliableNonPersistent

ExpressNonPersistent

The reliability applied to Non-persistent JMS messages sent using this connection factory.

password

Reversably encoded password (string)

It is recommended to use a container managed authentication alias instead of configuring this property.

persistentMapping

  • AssuredPersistent

  • ReliablePersistent

ReliablePersistent

The reliability applied to persistent JMS messages sent using this connection factory.

readAhead

  • AlwaysOff

  • AlwaysOn

  • Default

Default

Read ahead is an optimization that preemptively assigns messages to consumers. This processes the consumer requests faster.

remoteServerAddress

string

The remote server address that has triplets separated by a comma, with the syntax hostName:portNumber:chainName, used to connect to a bootstrap server. For example, Merlin:7276:BootstrapBasicMessaging. If hostName is not specified, the default is localhost. If portNumber is not specified, the default is 7276. If chainName is not specified, the default is BootstrapBasicMessaging. Refer to the information center for more information.

shareDurableSubscription

string

Controls whether or not durable subscription can be shared across connections.

targetTransportChain

string

Transport chains specify the communication protocols that can be used to communicate with the service integration bus in WebSphere Application Server traditional.

temporaryQueueNamePrefix

string

temp

The prefix of up to twelve characters used for the temporary queues created by applications that use this queue connection factory.

temporaryTopicNamePrefix

string

temp

The prefix of up to twelve characters used for the temporary topics created by applications that use this topic connection factory.

userName

string

It is recommended to use a container managed authentication alias instead of configuring this property.

properties.wmqJms

WebSphere MQ JMS connection factory

Name Type Default Description

CCSID

int
Min: 1

819

The coded character set identifier for a connection.

applicationName

string

The name by which an application is registered with the queue manager.

arbitraryProperties

string

Ability to specify properties not defined elsewhere

brokerCCSubQueue

string

The name of the queue from which a connection consumer receives nondurable subscription messages

brokerControlQueue

string

The name of the broker control queue

brokerPubQueue

string

The name of the queue where published messages are sent (the stream queue).

brokerQueueManager

string

The name of the queue manager on which the broker is running

brokerSubQueue

string

The name of the queue from which a nondurable message consumer receives messages

brokerVersion

  • 1

  • 2

The version of the broker being used

ccdtURL

string

A URL that identifies the name and location of the file containing the client channel definition table (CCDT) and specifies how the file can be accessed.

channel

string

The name of the MQI channel to use.

cleanupInterval

A period of time with millisecond precision

The interval, in milliseconds, between background runs of the publish/subscribe cleanup utility. Specify a positive integer followed by a unit of time, which can be hours (h), minutes (m), seconds (s), or milliseconds (ms). For example, specify 500 milliseconds as 500ms. You can include multiple values in a single entry. For example, 1s500ms is equivalent to 1.5 seconds.

cleanupLevel

  • FORCE

  • NONDUR

  • NONE

  • SAFE

  • STRONG

SAFE

The cleanup level for a broker-based subscription store.

clientId

string

The client identifier for a connection

cloneSupport

  • DISABLED

  • ENABLED

DISABLED

Whether two or more instances of the same durable topic subscriber can run simultaneously.

connectionNameList

string

A list of TCP/IP connection names (hostname(port))used for communications. ConnectionNameList supersedes the hostname and port properties.

failIfQuiesce

boolean

true

Whether calls to certain methods fail if the queue manager is in a quiescing state.

headerCompression

  • NONE

  • SYSTEM

NONE

A list of the techniques that can be used for compressing header data on a connection

hostName

string

The host name or IP address of the system on which the queue manager resides. The hostname and port properties are superseded by the ConnectionNameList property when it is specified.

localAddress

string

For a connection to a queue manager, this property specifies either or both of the following, (1) The local network interface to be used, (2) The local port, or range of local ports, to be used

messageCompression

  • NONE

  • RLE

NONE

A list of the techniques that can be used for compressing message data on a connection.

messageSelection

  • BROKER

  • CLIENT

CLIENT

Determines whether message selection is done by WebSphere MQ classes for JMS or by the broker.

password

Reversably encoded password (string)

The default password to use when creating a connection to the queue manager. (It is recommended to use a container managed authentication alias instead of configuring this property)

pollingInterval

A period of time with millisecond precision

If each message listener within a session has no suitable message on its queue, this value is the maximum interval, in milliseconds, that elapses before each message listener tries again to get a message from its queue. If it frequently happens that no suitable message is available for any of the message listeners in a session, consider increasing the value of this property. Specify a positive integer followed by a unit of time, which can be hours (h), minutes (m), seconds (s), or milliseconds (ms). For example, specify 500 milliseconds as 500ms. You can include multiple values in a single entry. For example, 1s500ms is equivalent to 1.5 seconds.

port

int
Min: 1

1414

The port on which the queue manager listens. The hostname and port properties are superseded by the ConnectionNameList property when it is specified.

providerVersion

  • 6

  • 7

  • unspecified

unspecified

The version, release, modification level and fix pack of the queue manager to which the application intends to connect.

pubAckInterval

int
Min: 0

25

The number of messages published by a publisher before WebSphere MQ classes for JMS requests an acknowledgment from the broker

queueManager

string

The name of the queue manager to connect to

receiveExit

string

Identifies a channel receive exit program, or a sequence of receive exit programs to be run in succession

receiveExitInit

string

The user data that is passed to channel receive exit programs when they are called

rescanInterval

A period of time with millisecond precision

5s

When a message consumer in the point-to-point domain uses a message selector to select which messages it wants to receive, WebSphere MQ classes for JMS searches the WebSphere MQ queue for suitable messages in the sequence determined by the MsgDeliverySequence attribute of the queue. Specify a positive integer followed by a unit of time, which can be hours (h), minutes (m), seconds (s), or milliseconds (ms). For example, specify 500 milliseconds as 500ms. You can include multiple values in a single entry. For example, 1s500ms is equivalent to 1.5 seconds.

securityExit

string

Identifies a channel security exit program

securityExitInit

string

The user data that is passed to a channel security exit program when it is called

sendCheckCount

int
Min: 0

The number of send calls to allow between checking for asynchronous put errors, within a single non-transacted JMS session.

sendExit

string

Identifies a channel send exit program, or a sequence of send exit programs to be run in succession.

sendExitInit

string

The user data that is passed to channel send exit programs when they are called.

shareConvAllowed

boolean

true

Whether a client connection can share its socket with other top-level JMS connections from the same process to the same queue manager, if the channel definitions match

sparseSubscriptions

boolean

false

Controls the message retrieval policy of a TopicSubscriber object.

sslCertStores

string

The Lightweight Directory Access Protocol (LDAP) servers that hold certificate revocation lists (CRLs) for use on an SSL connection.

sslCipherSuite

string

The CipherSuite to use for an SSL connection.

sslFipsRequired

boolean

Whether an SSL connection must use a CipherSuite that is supported by the IBM Java JSSE FIPS provider (IBMJSSEFIPS).

sslPeerName

string

For an SSL connection, a template that is used to check the distinguished name in the digital certificate provided by the queue manager.

sslResetCount

int
Min: 0
Max: 999999999

0

The total number of bytes sent and received by an SSL connection before the secret keys used by SSL are renegotiated.

statusRefreshInterval

A period of time with millisecond precision

1m

The interval, in milliseconds, between refreshes of the long running transaction that detects when a subscriber loses its connection to the queue manager. This property is relevant only if subscription store has the value QUEUE. Specify a positive integer followed by a unit of time, which can be hours (h), minutes (m), seconds (s), or milliseconds (ms). For example, specify 500 milliseconds as 500ms. You can include multiple values in a single entry. For example, 1s500ms is equivalent to 1.5 seconds.

subscriptionStore

  • BROKER

  • MIGRATE

  • QUEUE

BROKER

Determines where WebSphere MQ classes for JMS stores persistent data about active subscriptions.

targetClientMatching

boolean

true

Whether a reply message, sent to the queue identified by the JMSReplyTo header field of an incoming message, has an MQRFH2 header only if the incoming message has an MQRFH2 header.

tempQPrefix

string

The prefix that is used to form the name of a WebSphere MQ dynamic queue.

tempTopicPrefix

string

When creating temporary topics, JMS generates a topic string of the form TEMP/TEMPTOPICPREFIX/unique_id, or if this property is left with the default value, just TEMP/unique_id. Specifying a non-empty TEMPTOPICPREFIX allows specific model queues to be defined for creating the managed queues for subscribers to temporary topics created under this connection.

temporaryModel

string

The name of the model queue from which JMS temporary queues are created. SYSTEM.JMS.TEMPQ.MODEL can be used by the JMS Layer to create queues which accept persistent messages, as the default value cannot. SYSTEM.DEFAULT.MODEL.QUEUE can be opened only once. SYSTEM.JMS.TEMPQ.MODEL can be opened more than once. SYSTEM.DEFAULT.MODEL.QUEUE is deprecated.

transportType

  • BINDINGS

  • CLIENT

CLIENT

Whether a connection to a queue manager uses client mode or bindings mode.

userName

string

The default user name to use when creating a connection to a queue manager. (It is recommended to use a container managed authentication alias instead of configuring this property)

wildcardFormat

  • CHAR

  • TOPIC

TOPIC

Which version of wildcard syntax is to be used.

recoveryAuthData

Authentication data for transaction recovery.

Name Type Default Description

krb5Principal

string

The name of the Kerberos principal name or Kerberos service name to be used.

krb5TicketCache

Path to a file

The file location where Kerberos credentials for the Kerberos principal name or service name will be stored. Also known as the Kerberos credential cache (ccache)

password

Reversably encoded password (string)

Password of the user to use when connecting to the EIS. The value can be stored in clear text or encoded form. It is recommended that you encode the password. To do so, use the securityUtility tool with the encode option.

user

string

Name of the user to use when connecting to the EIS.