Fusion Middleware Control Help for WebLogic Server

Previous Next Open TOC in new window
Content starts here

Connection Factory: Configuration: Advanced Configuration

Configuration Options     

Use this page to define the advanced configuration parameters for this JMS connection factory.

Configuration Options

Name Description
Client ID

An optional Client ID for applications that use this JMS connection factory. If the Client ID Policy is set to Restricted (the default), then configuring a Client ID on the connection factory prevents more than one JMS client from using a connection from this factory.

This attribute is rarely configured and should normally be left at the default (blank), as JMS application programs can set their Client IDs dynamically using the standard JMS APIs javax.jms.JMSContext.setClientID() or javax.jms.Connection.setClientID(). The JMS application message processing containers (such as MDBs) normally make the Client ID configurable as part of container configuration.

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 Attribute (Does not apply to application modules) :
ClientParamsBean.ClientId

Allow Close() Within onMessage()

Specifies whether a connection factory creates message consumers that allow a close() or stop() method to be issued within its onMessage() method call.

  • If selected (set to true) on a custom connection factory, an onMessage() method callback is allowed to issue a close() method on its own Session, Connection and JMSContext objects, or a stop() call on its own Connection and JMSContext objects. If false, these calls will throw an exception.

  • Default JMS Connection Factories ("java:comp/DefaultJMSConnectionFactory", "weblogic.jms.ConnectionFactory", or "weblogic.jms.XAConnectionFactory") set this option to false and it cannot be modified.

Note: The onMessage() method of the Message Listener is allowed to call close() on its own MessageConsumer and JMSConsumer even when AllowCloseInOnMessage is set to false.
This value 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 Attribute (Does not apply to application modules) :
ClientParamsBean.AllowCloseInOnMessage

Client Acknowledge Policy

Acknowledge policy for non-transacted sessions that use the CLIENT_ACKNOWLEDGE mode. All indicates that calling acknowledge on a message acknowledges all unacknowledged messages received on the session. Previous specifies that calling acknowledge on a message acknowledges only unacknowledged messages up to, and including, the given message.

This parameter works around a change in the JMS specification and only applies to implementations that use the CLIENT_ACKNOWLEDGE acknowledge mode for a non-transacted session. 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).

ACKNOWLEDGE_PREVIOUS retains the old behavior (acknowledge all message up to and including the message being acknowledged). Whereas, ACKNOWLEDGE_ALL yields the new behavior, where all messages received by the given session are acknowledged regardless of which message is being used to effect the acknowledge.

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 Attribute (Does not apply to application modules) :
ClientParamsBean.AcknowledgePolicy

Multicast Overrun Policy

The policy to use when the number of outstanding multicast messages reaches the value specified in MessagesMaximum and some messages must be discarded.

  • Keep New

    - Indicates that the most recent messages are given priority over the oldest messages, and the oldest messages are discarded, as needed.

  • Keep Old

    - Indicates that 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.

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 Attribute (Does not apply to application modules) :
ClientParamsBean.MulticastOverrunPolicy

Local JNDI Name
Reconnect Policy

Specifies which types of JMS clients will be explicitly and implicitly refreshed after a lost network connection with a server or upon a server reboot. For example, selecting the Producers option will explicitly refresh JMS Producers and implicitly refresh any related Session and Connection clients.

  • None

    Do not refresh any JMS clients derived from this connection factory.

  • Producers

    Refresh all JMS Producer clients derived from this connection factory. This option does not refresh Consumers, QueueBrowsers, or Connections with a configured Client ID for a durable subscriber.

  • All

    Refresh all JMS Consumer and Producer clients derived from this connection factory, including Connections with a configured Client ID for a durable subscriber. This option does not refresh QueueBrowser clients.

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 Attribute (Does not apply to application modules) :
ClientParamsBean.ReconnectPolicy

Reconnect Blocking Time

The maximum length of time, in milliseconds, that any synchronous JMS calls, such as a producer.send(), consumer.receive(), or session.createBrowser(), will block the calling thread before giving up on a JMS client reconnect in progress.

This attribute is effective only if the Reconnect Policy option is set to either Producers or All. A value of 0 will cause synchronous JMS calls to not wait for any reconnect in progress; a value of -1 will cause an infinite wait for a reconnect.

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 Attribute (Does not apply to application modules) :
ClientParamsBean.ReconnectBlockingMillis

Total Reconnect Period

The maximum length of time, in milliseconds, that JMS clients (particularly asynchronous consumers) will continue to try to reconnect to the server after either the initial network disconnect or the last synchronous call attempt, whichever occurred most recently, before giving up retrying.

This attribute is effective only if the ReconnectPolicy attribute is set to either Producers or All. The default value of -1 means that that it will keep trying to reconnect indefinitely; a value of 0 means that there would be exactly one retry attempt.

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 Attribute (Does not apply to application modules) :
ClientParamsBean.TotalReconnectPeriodMillis

Attach JMSXUserID

Specifies whether WebLogic Server attaches the authenticated user name to sent messages.

If enabled, the system will attach the authenticated username onto sent messages if the destination supports this behavior. The username is placed in the JMSXUserID user property. You should consult the JMSXUserID documentation in Programming WebLogic JMS before using this feature.

When dynamically changed this will affect all connections made using this connection factory after the change was made.

MBean Attribute (Does not apply to application modules) :
SecurityParamsBean.AttachJMSXUserId


Back to Top