Skip navigation.
Downloads | Product Documentation | Support

Administration Console Online Help

# JMS Connection Factory --> Configuration --> General

Tasks Related Topics Attributes

## Overview

This tab defines general configuration attributes for a JMS connection factory. After defining a JMS server, you can configure one or more connection factories to create connections with predefined attributes.

## Tasks

Configuring a JMS Connection Factory

Deploying a Connection Factory on Multiple Individual Servers

## Related Topics

"WebLogic JMS Fundamentals" in Programming WebLogic JMS

"Managing WebLogic JMS" in Programming WebLogic JMS

"Developing a WebLogic JMS Application" in Programming WebLogic JMS

## Attributes

Table 155-1

Attribute Label | Description | Value Constraints
--- | --- | ---
Name | An alphanumeric name for this JMS connection factory configuration. This field will not accept spaces. Each JMS connection factory configuration in a WebLogic domain must have a unique name, regardless of the server instance or cluster in which it resides. WebLogic Server uses an MBean to implement and persist the configuration. MBean: `weblogic.management. configuration. JMSConnectionFactoryMBean` Attribute: `Name` |
JNDIName | The JNDI name used to look up the connection factory within the JNDI namespace. The connection factory name is configured separately. MBean: `weblogic.management. configuration. JMSConnectionFactoryMBean` Attribute: `JNDIName` |
Client Id | An optional client ID for a durable subscriber that uses this connection factory. Configuring this value prevents more than one JMS client from using a connection from the factory. Generally, JMS durable subscriber applications set their Client IDs dynamically using the `javax.jms.Connection.setClientID()` call. MBean: `weblogic.management. configuration. JMSConnectionFactoryMBean` Attribute: `ClientId` | Dynamic: yes
Default Priority | The default priority used for messages when a priority is not explicitly defined. Message producers can get the Priority explicitly by calling the `javax.jms.MessageProducer.getPriority()` method. MBean: `weblogic.management. configuration. JMSConnectionFactoryMBean` Attribute: `DefaultPriority` | Minimum: 0 Maximum: 9 Default: 4 Dynamic: yes
Default Time To Live | The maximum length of time, in milliseconds, that a message will exist. This value is used for messages when a priority is not explicitly defined. A value of 0 indicates that the message has an infinite amount time to live. Message producers can get the Time To Live explicitly by calling the `javax.jms.MessageProducer.getTimeToLive()` method. MBean: `weblogic.management. configuration. JMSConnectionFactoryMBean` Attribute: `DefaultTimeToLive` | Minimum: 0 Maximum: 9223372036854775807 Default: 0 Dynamic: yes
Default Time To Deliver | The delay time, in milliseconds, between when a message is produced and when it is made visible on its destination. Message producers can get the Time To Deliver explicitly by calling the `weblogic.jms.extensions.WLMessageProducer.getTimeToDeliver()` method. MBean: `weblogic.management. configuration. JMSConnectionFactoryMBean` Attribute: `DefaultTimeToDeliver` | Minimum: 0 Maximum: 9223372036854775807 Default: 0 Dynamic: yes
Default Delivery Mode | The delivery mode assigned to all messages sent by a producer using this connection factory Message producers can get the Delivery Mode explicitly by calling the `javax.jms.MessageProducer.getDeliveryMode()` method. MBean: `weblogic.management. configuration. JMSConnectionFactoryMBean` Attribute: `DefaultDeliveryMode` | Default: Persistent Valid values: Persistent Non-Persistent Dynamic: yes
Default Redelivery Delay | The delay time, in milliseconds, before rolled back or recovered messages are redelivered. Message consumers can get the Redelivery Delay explicitly by calling the `weblogic.jms.extensions.WLSession.getRedliveryDelay()` method. MBean: `weblogic.management. configuration. JMSConnectionFactoryMBean` Attribute: `DefaultRedeliveryDelay` | Minimum: 0 Maximum: 9223372036854775807 Default: 0 Dynamic: yes
Messages Maximum | The maximum number of messages that can exist for an asynchronous session and that have not yet been passed to the message listener. A value of -1 indicates that there is no limit on the number of messages. In this case, however, the limit is set to the amount of remaining virtual memory. A value of 0 is not valid and will cause exceptions to be thrown. For ordered redelivery of messages to occur for asynchronous consumers, this must explicitly set to 1 on the connection factory used by the receiving application. When the number of messages reaches the Messages Maximum value: For multicast sessions, new messages are discarded according the policy specified by the Overrun Policy attribute and a DataOverrunException is thrown. For non-multicast sessions, new messages are flow-controlled, or retained on the server until the application can accommodate the messages. For multicast sessions, when a connection is stopped, messages will continue to be delivered, but only until the Messages Maximum value is reached. Once this value is reached, messages will be discarded based on the Overrun policy. Note: For topic subscribers that use the multicast extension, also see the Overrun Policy attribute. MBean: `weblogic.management. configuration. JMSConnectionFactoryMBean` Attribute: `MessagesMaximum` | Minimum: -1 Maximum: 2147483647 Default: 10 Dynamic: yes
Overrun Policy | The policy to use when the number of outstanding multicast messages reaches the value specified in Messages Maximum and some messages must be discarded. If set to Keep New, the most recent messages are given priority over the oldest messages, and the oldest messages are discarded, as needed. If set to Keep Old, the oldest messages are given priority over the most recent messages, and the most recent messages are discarded, as needed. Message age is defined by the order of receipt, not by the JMSTimestamp value. MBean: `weblogic.management. configuration. JMSConnectionFactoryMBean` Attribute: `OverrunPolicy` | Default: Keep Old Valid values: Keep Old Keep New Dynamic: yes
Allow Close In On Message | Specifies whether the connection factory creates message consumers that allow a `close()` or `stop()` method to be issued within its `onMessage()` method call. If selected (true), a `close()` or `stop ()` method call from within an `onMessage()` method call will succeed instead of blocking forever. If the acknowledge mode of the session is set to `AUTO_ACKNOWLEDGE`, the current message will still be acknowledged automatically when the `onMessage()` call completes. If not selected (false), it will cause the `stop()` and `close()` methods to hang if called from `onMessage()`. This attribute is dynamic and can be changed at any time. However, changing the value does not affect existing connections. It only affects new connections made with this connection factory. MBean: `weblogic.management. configuration. JMSConnectionFactoryMBean` Attribute: `AllowCloseInOnMessage` | Default: false Valid values: true false Dynamic: yes
Acknowledge Policy | The acknowledge policy for non-transacted sessions that use the CLIENT_ACKNOWLEDGE mode. The All policy specifies that calling acknowledge on a message acknowledges all unacknowledged messages received on the session. The Previous policy specifies that calling acknowledge on a message acknowledges only unacknowledged messages up to, and including, the given message. `Note:` This attribute works around a change in the JMS specification. Specifically, the specification allowed users to acknowledge all messages before and including the message being acknowledged. The specification was changed so that acknowledging any message acknowledges all messages ever received (even those received after the message being acknowledge), as follows: MBean: `weblogic.management. configuration. JMSConnectionFactoryMBean` Attribute: `AcknowledgePolicy` | Default: All Valid values: All Previous Dynamic: yes
Load Balancing Enabled | For distributed destinations, specifies whether non-anonymous producers sending to a distributed queue or topic are load balanced on a per-send basis. If true, the associated message producers will be load balanced on every `send()` or `publish()`. If false, the associated message producers will be load balanced on the first `send()` or `publish()`. MBean: `weblogic.management. configuration. JMSConnectionFactoryMBean` Attribute: `LoadBalancingEnabled` | Default: true Valid values: true false Dynamic: yes
Server Affinity Enabled | For distributed destinations, specifies whether a WebLogic Server that is load balancing consumers or producers across multiple physical destinations (queues or topics) in a distributed destination, will first attempt to load balance across any other physical destinations that are also running on the same WebLogic Server. MBean: `weblogic.management. configuration. JMSConnectionFactoryMBean` Attribute: `ServerAffinityEnabled` | Default: true Valid values: true false Dynamic: yes