This section describes the Java EE JMS resource definition elements and properties in the following sections
This section describes the elements that you specify when you configure the connection factory in an application module by using the JMS resource definitions as described in http://docs.oracle.com/javaee/7/api/javax/jms/JMSConnectionFactoryDefinition.html.
The following example defines a connection factory using the @JMSConnectionFactoryDefinition
annotation:
@JMSConnectionFactoryDefinition( name="java:global/jms/demoConnectionFactory", className= "javax.jms.ConnectionFactory", description="Sample description for Connection Factory", clientId="client_Id01", transactional=true, properties= {"UserName=myuser", "delivery-mode=Persistent", "load-balancing-enabled=true"}
For more information about the JMSConnectionFactoryDefinition annotation,
see http://docs.oracle.com/javaee/7/api/javax/jms/JMSConnectionFactoryDefinition.html.
For the element definitions in the JMS application module, see the weblogic-jms.xsd schema available at http://xmlns.oracle.com/weblogic/weblogic-jms/1.4/weblogic-jms.xsd
Table A-1 @JMSConnectionFactoryDefinition Elements
Element in @JMSConnectionFactoryDefinition Elements | Equivalent Element in the JMS Application Module | Type | Description |
---|---|---|---|
name |
jndi-name |
String. |
The JNDI name of the JMS connection factory that is being defined. NOTE: This is a mandatory element. |
description |
notes |
String |
A description of the connection factory. |
clientId |
clientId |
String |
The client ID to be used for the connection. |
transactional |
transaction-paramsxa-connection-factory-enabled |
Boolean |
Specifies whether the connections participate in transactions. Set this property to false
if connections should not participate in transactions. . The default isTrue . |
resourceAdapter |
None |
String |
The name of the resource adapter. |
className |
None |
String |
The value is ignored. |
InterfaceName |
None |
String |
The value is ignored. |
maxPoolSize |
None |
integer |
The value is ignored. |
minPoolSize |
None |
integer |
The value is ignored. |
user |
None |
String |
The value is ignored. |
password |
None |
String |
The value is ignored. |
JMS Connection Factory Properties
Note:
The properties defined in this section apply only when the connection factory definition does not specify an adapter. When an adapter is specified, properties that are unique to the adapter are considered.Table A-2 @JMSConnectionFactoryDefinition Properties
@JMSConnectionFactoryDefinition Property | Equivalent Element in the JMS Application Module | Type | Description |
---|---|---|---|
name |
name |
Sting |
A name for the connection factory. When not specified, the name is |
jms-server-name |
sub-deployment-name |
Sting |
The JMS server to which the resource is targeted. If the |
default-targeting-enabled |
default-targeting-enabled |
boolean |
Set this property to |
Table A-3 A-3 @JMSConnectionFactoryDefinition Properties for Default Message Delivery
@JMSConnectionFactoryDefinition Property | Equivalent default-delivery-params Element in the JMS Application Module | Type | Description |
---|---|---|---|
default-delivery-mode |
default-delivery-mode |
String |
The delivery mode assigned to all messages sent by a producer using the connection factory that is being defined. Accepted values: |
default-time-to-deliver |
default-time-to-deliver |
String |
The delay time, in milliseconds, between when a message is produced and when it is made visible on its destination |
default-time-to-live |
default-time-to-live |
Long |
The maximum length of time, in milliseconds, that a message exists. This value is used for messages when a priority is not explicitly defined. |
default-priority |
default-priority |
integer |
The default priority used for messages when a priority is not explicitly defined. |
default-redelivery-delay |
default-redelivery-delay |
Long |
The delay time, in milliseconds, before rolled back or recovered messages are redelivered. |
default-compression-threshold |
default-compression-threshold |
integer |
The number of bytes for a serialized message body so any message that exceeds this limit triggers message compression when the message is sent or received by the JMS message producer or consumer |
default-unit-of-order |
default-unit-of-order |
String |
The default Unit-of-Order producer for this connection factory. Options are: System-generated and User-Generated. |
send-timeoutr |
send-timeoutr |
Long |
The maximum length of time, in milliseconds, that a sender waits when there is not enough available space (no quota) on a destination to accommodate the message being sent. |
For more information about these properties, see JMS Connection Factory: Configuration: Default Delivery section in the Oracle WebLogic Server Administration Console Online Help.
Table A-4 A-4@JMSConnectionFactoryDefinition Client Properties
@JMSConnectionFactoryDefinition Property | Equivalent client-params element in the JMS Application Module | Type | Description |
---|---|---|---|
client-id-policy |
client-id-policy |
String |
Whether more than one JMS connection can use the same client ID. Valid options are |
subscription-sharing-policy |
subscription-sharing-policy |
String |
The Subscription Sharing Policy on the connection. Valid options are |
acknowledge-policy |
acknowledge-policy |
String |
The client acknowledge policy for non transacted sessions that use the |
allow-close-in-onMessage |
allow-close-in-onMessage |
Boolean |
Whether the connection factory creates message consumers that allow a false for a connection factory that is created by using the JMS Connection Factory Definition. If connection factory is created in a JMS system module or in a application-scoped module, the default value of allow-close-in-onMessage will be true . |
messages-maximum |
messages-maximum |
int |
The maximum number of messages that can exist for an asynchronous session and that have not yet been passed to the message listener |
multicast-overrun-policy |
multicast-overrun-policy |
String |
The policy to be used when the number of outstanding multicast messages reaches the value specified in Valid options are |
synchronous-prefetch-mode |
synchronous-prefetch-mode |
String |
Whether a synchronous consumer will prefetch messages (that is, messages sent from the server to the client) in one server access. Valid options are |
reconnect-policy |
reconnect-policy |
String |
Which types of JMS clients are explicitly and implicitly refreshed after a lost network connection with a server or upon a server restart. Valid options are |
reconnect-blocking-millis |
reconnect-blocking-millis |
Long |
The maximum length of time, in milliseconds, that any synchronous JMS calls block the calling thread before giving up on a JMS client reconnect in progress. |
total-reconnect-period-millis |
total-reconnect-period-millis |
Long |
The maximum length of time, in milliseconds, that JMS clients (particularly asynchronous consumers) 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. |
For more information about these properties, see JMS Connection Factory: Configuration: Client in the Oracle WebLogic Server Administration Console Online Help.
Table A-5 A-5@JMSConnectionFactoryDefinition Transaction Properties
@JMSConnectionFactoryDefinition Property | Equivalent transaction-params element in the JMS Application Module | Type | Description |
---|---|---|---|
transaction-timeout |
transaction-timeout |
Long |
The timeout value (in seconds) for all transactions on connections created with the connection factory. Set this property only when thetransactional element is set to true . |
For more information about these properties, see JMS Connection Factory: Configuration: Transaction in the Oracle WebLogic Server Administration Console Online Help.
For more information about these properties, see JMS Connection Factory: Configuration: Flow control in the Oracle WebLogic Server Administration Console Online Help
Table A-6 A-6@JMSConnectionFactoryDefinition Flow Control Properties
@JMSConnectionFactoryDefinition Property | Equivalent flow-control-params Element in the JMS Application Module | Type | Description |
---|---|---|---|
flow-minimum |
flow-minimum |
integer |
The maximum number of messages-per-second allowed for a producer that is experiencing a threshold condition. When a producer is flow controlled it is never be allowed to go faster than the FlowMaximum messages per second. |
flow-maximum |
flow-maximum |
integer |
The minimum number of messages-per-second allowed for a producer that is experiencing a threshold condition. This is the lower boundary of a producer's flow limit. That is, WebLogic JMS does not further slow down a producer whose message flow limit is at its FlowMinimum. |
flow-interval |
flow-interval |
integer |
The adjustment period of time, in seconds, when a producer adjusts its flow from the FlowMaximum number of messages to the FlowMinimum amount, or reverse. |
flow-steps |
flow-steps |
integer |
The number of steps used when a producer is adjusting its flow from the Flow Maximum amount of messages to the Flow Minimum amount, or vice versa. |
flow-control-enabled |
flow-control-enabled |
Boolean |
Whether a producer created using a connection factory allows flow control. |
one-way-send-mode |
one-way-send-mode |
String |
Whether message producers created using this connection factory are allowed to do one-way message sends to improve typical non-persistent, non-transactional messaging performance. Valid options are |
one-way-send-window-size |
one-way-send-window-size |
integer |
The maximum number of sent messages per window when One-Way Send Mode is set to allow queue senders and/or topic publishers to make |
For more information about these properties, see JMS Connection Factory: Configuration: Flow control in the Oracle WebLogic Server Administration Console Online Help
Table A-7 A-7 @JMSConnectionFactoryDefinition Load Balancing Properties
@JMSConnectionFactoryDefinition Property | Equivalent load-balancing-params Element in the JMS Application Module | Type | Description |
---|---|---|---|
load-balancing-enabled |
load-balancing-enabled |
Boolean |
Whether non-anonymous producers created through a connection factory are load balanced within a distributed destination on a per-call basis. |
server-affinity-enabled |
server-affinity-enabled |
Boolean |
Whether a server instance that is load balancing consumers or producers across multiple members destinations of a distributed destination, first attempts to load balance across any other physical destinations that are also running on the same server instance. |
For more information about these properties, see JMS Connection Factory: Configuration: Load Balancing in the Oracle WebLogic Server Administration Console Online Help.
Table A-8 A-8@JMSConnectionFactoryDefinition Load Balancing Properties
@JMSConnectionFactoryDefinition Property | Equivalent security-params Element in the JMS Application Module | Type | Description |
---|---|---|---|
attach-jmsx-user-id |
attach-jmsx-user-id |
Boolean |
Whether non-anonymous producers created through a connection factory are load balanced within a distributed destination on a per-call basis. |
For more information about these properties, see JMS Connection Factory: Configuration Security in the Oracle WebLogic Server Administration Console Online Help.
This section describes the elements that you specify when you configure a JMS destination resource in an application module by using the JMS resource definitions as described in Defining JMS Resources Using Java EE Resource Definitions.
The following example defines a destination using the @JMSDestinationDefinition
annotation:
@JMSDestinationDefinition( name="java:global/jms/demoDestination", interfaceName="javax.jms.Queue", className= "javax.jms.Queue", description="Sample description for Queue", destinationName="myQueue", properties= {"default-unit-of-order=true", "time-to-deliver=Persistent", "attach-sender=always"}
For more information about the JMSDestinationDefinition
annotation, see http://docs.oracle.com/javaee/7/api/javax/jms/JMSDestinationDefinition.html
For the element definitions in the JMS application module, see the http://xmlns.oracle.com/weblogic/weblogic-jms/1.4/weblogic-jms.xsd
Table A-9 A-9 @JMSDestinationDefinition Elements
Element in @JMSDestinationDefinition | Equivalent Element in the JMS Application Module | Type | Description |
---|---|---|---|
name |
jndi-name |
String |
The JNDI name of the JMS destination resource that is being defined. NOTE: This is a mandatory element. |
interfaceName |
uniform-distributed-queue or uniform-distributed-topic. |
String |
The fully qualified name of the JMS destination interface. Valid options are The JMS destination definition is converted to a JMS module with entity of type |
description |
notes |
String |
A description for the JMS destination that is being defined. |
destination name |
name |
String |
The runtime MBean name of the queue or topic. When not specified, the destination name is |
className |
None |
- |
This value is ignored. |
resourceAdapter |
None |
- |
This value is ignored. |
Table A-10 A-10@JMSDestinationDefinition Properties
@JMSDestinationDefinition Property | Equivalent Element in the JMS Application Module | Type | Description |
---|---|---|---|
jms-server-name |
sub-deployment-name |
String |
The JMS server to which the resource is targeted. If the |
default-targeting-enabled |
default-targeting-enabled |
Boolean |
Set this property to jms-server-name is specified. |
Table A-11 A-11@JMSDestinationDefiition Threshold Properties
@JMSDestinationDefinition Property | Equivalent thresholds Element in the JMS Applicaton Module |
Type | Description |
---|---|---|---|
bytes-high |
bytes-high |
Long |
The upper threshold (total number of bytes in this destination) that triggers logging or flow control events. |
bytes-low |
bytes-low |
Long |
The lower threshold (total number of bytes in this destination) that triggers logging or flow control events. |
messages-high |
messages-high |
Long |
The upper threshold (total number of messages in this destination) that triggers logging or flow control events. |
messages-low |
messages-low |
Long |
The lower threshold (total number of messages in this destination) that triggers logging or flow control events. |
For more information about these properties, see Uniform Distributed Topic: Configuration : Thresholds and Quotas in the Oracle WebLogic Server Administration Console Online Help.
Table A-12 A-12@JMSDestinationDefinition Message Delivery Override Properties
@JMSDestinationDefinition Property | Equivalent delivery-params-overrides Element in the JMS Application Module |
Type | Description |
---|---|---|---|
delivery-mode |
delivery-mode |
String |
The delivery mode assigned to all messages that arrive at the destination regardless of the DeliveryMode specified by the message producer. Valid options arePersistent or Non-Persistent. |
time-to-deliver |
time-to-deliver |
String |
The delivery delay, either in milliseconds or as a schedule, between when a message is produced and when it is made visible on its target distributed destination. |
time-to-live |
time-to-live |
Long |
The time-to-live assigned to all messages that arrive at the destination, regardless of the TimeToLive value specified by the message producer. |
priority |
priority |
Integer |
The priority assigned to all messages that arrive at the destination, regardless of the Priority specified by the message producer. |
redelivery-delay |
redelivery-delay |
Long |
The delay, in milliseconds, before rolled back or recovered messages are redelivered, regardless of the RedeliveryDelay specified by the consumer and/or connection factory. For more information, see "Uniform Distributed Topic: Configuration: Redelivery" section in Oracle WebLogic Server Administration Console Online Help. |
For more information about these properties, see Uniform Distributed Topic: Configuration: Overrides section in the Oracle WebLogic Server Administration Console Online Help.
Table A-13 A-13@JMSDestinationDefinition Message Delivery Failure Properties
@JMSDestinationDefinition Property | Equivalent delivery-failure params Element in the JMS Application Module |
Type | Description |
---|---|---|---|
redelivery-limit |
redelivery-limit |
Integer |
The number of redelivery tries a message can have before it is moved to the error destination. |
expiration-policy |
expiration-policy |
String |
The message Expiration Policy to be used when an expired message is encountered on a destination. Valid options are Discard or |
expiration-logging-policy |
expiration-logging-policy |
String |
The information about the message is logged when the Expiration Policy is set to |
For more information about these properties, see Uniform Distributed Topic: Configuration: Redelivery section in Oracle WebLogic Server Administration Console Online Help.
Table A-14 A-14@JMSDestinationDefinition Message Logging Properties
@JMSDestinationDefinition Property | Equivalent message-logging-params Element in the JMS Application Module |
Type | Description |
---|---|---|---|
message-logging-enabled |
message-logging-enabled |
Boolean |
Whether the module logs information about the message life cycle. |
message-logging-format |
message-logging-format |
String |
The information about the message is logged. This property is defined as shown in the following example: For more information about the valid values for this property, see the description for theMessageLoggingFormat attribute of MessageLoggingParamsBean in MBean Reference for Oracle WebLogic Server. |
For more information about these properties, see Uniform Distributed Destination: Configuration: Logging section in the Oracle WebLogic Server Administration Console Online Help.
Table A-15 A-15@JMSDestinationDefinition Advanced Configuration Properties
@JMSDestinationDefinition Property | Equivalent Element in the JMS Application Module | Type | Description |
---|---|---|---|
load-balancing-policy |
load-balancing-policy |
String |
How messages are distributed to the members of this destination Valid options areRound-Robin and Random |
production-paused-at-startup |
production-paused-at-startup |
Boolean |
Whether new message production is paused on a destination at startup |
insertion-paused-at-startup |
insertion-paused-at-startup |
Boolean |
Whether new message insertion is paused on a destination at startup. |
consumption-paused-at-startup |
consumption-paused-at-startup |
Boolean |
Whether consumption is paused on a destination at startup. |
default-unit-of-order |
default-unit-of-order |
Boolean |
Specifies whether WebLogic Server creates a system-generated unit-of-order name based on the domain, JMS server, and destination name. |
unit-of-order-routing |
unit-of-order-routing |
String |
Determines how a distributed destination member is selected as the destination for a message that is part of a unit-of-order. Valid options are |
attach-sender |
attach-sender |
String |
Whether messages landing on this destination should attach the credential of the sending user. Valid options are supports, |
jms-create-destination-identifier |
jms-create-destination-identifier |
String |
A reference name for a destination or a member of a distributed destination that provides a way to look-up that destination without JNDI using |
saf-export-policy |
saf-export-policy |
String |
Whether a user can send messages to a destination using Store-and-Forward. Valid options are |
messaging-performance-preferenc |
messaging-performance-preferenc |
Integer |
How long destinations are willing to wait to create full batches of available messages (if at all) for delivery to consumers. |
unit-of-work-handling-policy |
unit-of-work-handling-policy |
String |
Whether the Unit-of-Work (UOW) feature is enabled for this destination. Valid options are |
incomplete-work-expiration-time |
incomplete-work-expiration-time |
Integer |
The maximum length of time, in milliseconds, before undelivered messages in an incomplete UOW are expired. |
For more information about these properties, see Advanced Configuration Options in Uniform Distributed Topic: Configuration: General section in the Oracle WebLogic Server Administration Console Online Help.
Note:
These properties are applicable only when theinterfaceName
element of @JMSDestinationDefinition
is set to javax.jms.Queue.
For more information about these properties, see Uniform Distributed Queue: Configuration: General section in the Oracle WebLogic Server Administration Console Online Help.
Table A-16 A-16@JMSDestinationDefinition Properties for Queue Destinations
@JMSDestinationDefinition Property | Equivalent Element in the JMS Application Module | Type | Description |
---|---|---|---|
forward-delay |
forward-delay |
Integer |
The number of seconds after which a uniform distributed queue member with no consumers wait before forwarding its messages to other uniform distributed queue members that do have consumers. |
reset-delivery-count-on-forward |
reset-delivery-count-on-forward |
Boolean |
Whether or not the delivery count is reset during message forwarding between distributed queue members. |
Note:
These properties are applicable only when theinterfaceName
element of @JMSDestinationDefinition
is set to javax.jms.Topic.
For more information about these properties, see Uniform Distributed Topic: Configuration: General and Uniform Distributed Topic: Multicast sections in the Oracle WebLogic Server Administration Console Online Help
Table A-17 A-17@JMSDestinationDefinition Properties for Topic Destinations
@JMSDestinationDefinition Property | Equivalent Element in the JMS Application Module | Type | Description |
---|---|---|---|
forwarding-policy |
forwarding-policy |
String |
The uniform distributed topic message Forwarding Policy specifies whether or not a sent message is forwarded to all members. Valid options are When a destination is created by using JMS destination definition, the default value of this property is Replicated . Therefore, when you deploy application modules that include JMS destination definitions to a Resource Group or Resource Group Template, use the default forwarding policy (Partitioned |
multicast-address |
multicast-address |
String |
The address used by the topic to transmit messages to multicast consumers. |
multicast-time-to-live |
multicast-time-to-live |
Integer |
The Time-To-Live value used for multicasting, which specifies the number of routers that the message can traverse en route to the consumers. |
multicast-port |
multicast-port |
Integer |
The port used by the topic to transmit messages to multicast consumers. |