# QueueBean

Overview | Related MBeans | Attributes | Operations

## Overview

Queues are used for asynchronous peer communications. A message delivered to a queue will be distributed to one consumer. Several aspects of a queues behavior can be configured with a queue bean.

Security roles | The following roles have read, write, and invoke permission for all non-encrypted attributes and operations in this MBean: Deployer
Fully Qualified Interface Name | If you use the `getMBeanInfo` operation in MBeanTypeServiceMBean, supply the following value as this MBean's fully qualified interface name: `weblogic.j2ee.descriptor.wl.QueueBean`
Factory Methods | Factory methods in JMSBean
Additional Access Points | In addition to accessing this MBean by invoking a factory method, you can also access this MBean from the following MBean attributes:
JMSBean.Queues |
Access Points Inherited from DestinationBean | Because this MBean extends or implements DestinationBean, you can also access this MBean by retrieving DestinationBeans. The following attributes contain DestinationBeans and its subtypes:
DeliveryFailureParamsBean.ErrorDestination GroupParamsBean.ErrorDestination |
Subtypes | The following MBeans extend or implement this MBean type:
UniformDistributedQueueBean |

## Related MBeans

This section describes attributes that provide access to other MBeans. For more information about the MBean hierarchy, refer to WebLogic Server MBean Data Model.

DeliveryFailureParams DeliveryParamsOverrides MessageLoggingParams Quota | Template Thresholds

### DeliveryFailureParams

`DeliveryFailureParams` control what should happen to messages when failures occur. They allow the adminstrator to control error destinations, logging and other actions that might be taken when a message can not be delivered or when other failures are detected.

Factory Methods | No explicit creator method. The child shares the lifecycle of its parent.
Privileges | Read only
Type | DeliveryFailureParamsBean
Relationship type: | Containment.

### DeliveryParamsOverrides

Many delivery parameters can be set by the JMS client. Setting an override causes the current value of a delivery parameter to be ignored and replaced by the value set here.

Factory Methods | No explicit creator method. The child shares the lifecycle of its parent.
Privileges | Read only
Type | DeliveryParamsOverridesBean
Relationship type: | Containment.

### MessageLoggingParams

These parameters control how the server performs message logging.

They allow the adminstrator to configure the server to change message logging when a message life cycle changes are detected.

Factory Methods | No explicit creator method. The child shares the lifecycle of its parent.
Privileges | Read only
Type | MessageLoggingParamsBean
Relationship type: | Containment.

### Quota

A Quota controls the allotment of system resources available to destinations. For example, the number of bytes a destination is allowed to store can be configured with a Quota.

Privileges | Read/Write
Type | QuotaBean
Relationship type: | Reference.

### Template

The JMS template from which the destination is derived. A template provides an efficient means of defining multiple destinations with similar configuration values.

If a JMS template is specified, destination parameters that are set to their default values will instead inherit their values from the JMS template at run-time. However, if a JMS template is not defined, then the configuration values for the destination must be specified as part of the destination.

Although you can dynamically modify a the configuration of a JMS template, the configuration values on a destination are static.

Privileges | Read/Write
Type | TemplateBean
Relationship type: | Reference.
Redeploy or Restart required | Changes take effect after you redeploy the module or restart the server.

### Thresholds

A threshold is an action point that must be exceeded in order to produce a given effect. These action points may cause logging, flow control, or other actions, as defined by the specific points whose values have been exceeded.

Factory Methods | No explicit creator method. The child shares the lifecycle of its parent.
Privileges | Read only
Type | ThresholdParamsBean
Relationship type: | Containment.

## Attributes

This section describes the following attributes:

AttachSender ConsumptionPausedAtStartup DefaultUnitOfOrder DestinationKeys InsertionPausedAtStartup JMSCreateDestinationIdentifier JNDIName LocalJNDIName | MaximumMessageSize MessagingPerformancePreference Name Notes ProductionPausedAtStartup SAFExportPolicy SubDeploymentName

### AttachSender

Specifies whether messages landing on this destination should attach the credential of the sending user.

- Supports

  The JMSXUserID property is set with the security principal of the sending user if requested. The sender can request its identity to be attached to its messages by using a ConnectionFactory with `AttachJMSXUserID="true"`.

- Never

  The JMSXUserID property is never be set with the security principal of the sending user.

- Always

  The JMSXUserID property is always set with the security principal of the sending user.

This attribute is dynamically configurable. A dynamic change of this attribute will affect only messages received after the update has been made.

Privileges | Read/Write
Type | java.lang.String
Default Value | supports
Legal Values | supports never always

### ConsumptionPausedAtStartup

Specifies whether consumption is paused on a destination at startup.

- default

  If a JMS template is specified, then this value inherits the template's Consumption Paused At Startup value. If no JMS template is configured for the destination, then the Default value is equivalent to false.

- false

  Consumption Paused is explicitly disabled for this destination.

- true

  Consumption Paused is explicitly turned on for this destination.

Privileges | Read/Write
Type | boolean

### DefaultUnitOfOrder

Specifies whether WebLogic Server creates a system-generated Unit- of-Order name that is statistically unique for a destination. Any message arriving at this destination that does not already belong to a unit-of-order is assigned this default unit-of-order name.

The initial use case is to replace the deprecated "ordered redelivery" feature.

Privileges | Read/Write
Type | boolean

### DestinationKeys

The list of potential destination keys for for sorting the messages that arrive on a JMS destination.

The keys are ordered from most significant to least significant. If more than one key is specified, a key based on the JMSMessageID can only be the last key in the list.

Note: If JMSMessageID is not defined in the key, it is implicitly assumed to be the last key and is set as "Ascending" (FIFO) for the sort order.

Privileges | Read/Write
Type | class java.lang.String[]

### InsertionPausedAtStartup

Specifies whether new message insertion is paused on a destination at startup.

- default

  If a JMS template is specified, then this value inherits the template's Insertion Paused At Startup value. If no JMS template is configured for the destination, then the Default value is equivalent to false.

- false

  Insertion Paused is explicitly disabled for this destination.

- true

  Insertion Paused is explicitly turned on for this destination.

Privileges | Read/Write
Type | boolean

### JMSCreateDestinationIdentifier

The name of a destination name when using the `QueueSession.createQueue` and `TopicSession.createTopic` API.

This name must be unique within the scope of the JMS server to which this destination is targeted. However, it does not need to be unique within the scope of the entire JMS module. For example, two queues can have the same destination name as long as those queues are targeted to different JMS servers.

Note: Since this name must be unique within the scope of a JMS server, verify whether other JMS modules may contain destination names that conflict with this name. It is the responsibility of the deployer to resolve the destination names targeted to JMS servers.

Privileges | Read/Write
Type | java.lang.String

### JNDIName

The global JNDI name used to look up the destination within the JNDI namespace.

In a clustered environment, this name is propagated to the entire cluster. If you want the JNDI name to be bound only on the local server, and not propagated to the rest of the cluster, then use the `Local JNDI Name` parameter.

If not specified, the destination name will not be advertised through the global JNDI namespace.

Privileges | Read/Write
Type | java.lang.String

### LocalJNDIName

The local JNDI name used to look up the destination within the JNDI namespace of the server where the destination resource is targeted. In a clustered environment, this name is bound only on the local server instance and is not propagated to the rest of the cluster.

A destination can have both a local JNDI name and a (global) JNDI name.

Privileges | Read/Write
Type | java.lang.String

### MaximumMessageSize

The maximum size of a message that is accepted from producers on this destination.

The message size includes the message body, any user-defined properties, and the user-defined JMS header fields: `JMSCorrelationID` and `JMSType` . Producers sending messages that exceed the configured maximum message size for the destination receive a `ResourceAllocationException` .

The maximum message size is only enforced for the initial production of a message. Messages that are redirected to an error destination or forwarded to a member of a distributed destination are not checked for size. For instance, if a destination and its corresponding error destination are configured with a maximum message size of 128K bytes and 64K bytes, respectively, a message of 96K bytes could be redirected to the error destination (even though it exceeds the 64K byte maximum), but a producer could not directly send the 96K byte message to the error destination.

This attribute is dynamically configurable, but only incoming messages are impacted; stored messages are not impacted.

Privileges | Read/Write
Type | int
Default Value | 2147483647
Minimum value | 0
Maximum value | 2147483647

### MessagingPerformancePreference

Specifies the destination's peformance preference in regards to message latency or throughput. The lower the value, the more the destination will emphasize latency over throughput. Conversely, the higher the value, the more the destination will emphasize throughput over latency.

Privileges | Read/Write
Type | int
Default Value | 25
Minimum value | 0
Maximum value | 100

### Name

The name of this entity, represented in XML as a attribute

Many of the elements within the JMS module are named entities. All of the named entities encased by a type in the XML file must be unique. This is the identifier used to delineate a particular entity within the JMS module.

This attribute cannot be modified externally from the module (for example with a deployment plan) because it may be used inside the module referentially.

Privileges | Read/Write
Type | java.lang.String

### Notes

Optional information that you can include to describe this named JMS descriptor bean.

JMS module saves this note in the JMS descriptor file as XML PCDATA. All left angle brackets (<) are converted to the XML entity `&lt;`. Carriage returns/line feeds are preserved.

Note:

  If you create or edit a note from the Administration Console, the Administration Console does not preserve carriage returns/line feeds.

Privileges | Read/Write
Type | java.lang.String

### ProductionPausedAtStartup

Specifies whether new message production is paused on a destination at startup.

- default

  If a JMS template is specified, then this value inherits the template's Production Paused At Startup value. If no JMS template is configured for the destination, then the Default value is equivalent to false.

- false

  Production Paused is explicitly disabled for this destination.

- true

  Production Paused is explicitly turned on for this destination.

Privileges | Read/Write
Type | boolean

### SAFExportPolicy

Specifies whether a user can send messages to a destination using Store-and-Forward.

- All

  All users can send messages to this destination using Store-and-Forward.

- None

  Remote users can not send messages to a destination using Store-and-Forward.

This attribute is dynamically configurable. A dynamic change of this attribute will affect only messages sent after the update has been made.

Privileges | Read/Write
Type | java.lang.String
Default Value | All
Legal Values | All None

### SubDeploymentName

Gets the name of the sub-deployment to use when targeting this entity

Entities are targeted using a sub-deployment with this name. The targets of the sub-deployment will be the targets of this entity.

Privileges | Read/Write
Type | java.lang.String

## Operations

This section describes the following operations:

addDestinationKey isSet removeDestinationKey | unSet

### addDestinationKey

Adds a destination key.

Adds a string to the list of keys to be used for sorting destinations. The string given will be added to the end of the list.

Operation Name | `"addDestinationKey"`
Parameters | `Object [] { destinationKey }` where: `destinationKey` is an object of type `java.lang.String` that specifies: The string to be added as a key. The string is added added to the end of the list of keys.
Signature | `String [] { "java.lang.String" }`
Returns | `void`

### isSet

Return true if the given property has been explicitly set in this bean.

Operation Name | `"isSet"`
Parameters | `Object [] { propertyName }` where: `propertyName` is an object of type `java.lang.String` that specifies: property to check
Signature | `String [] { "java.lang.String" }`
Returns | `boolean`
Exceptions | `java.lang.IllegalArgumentException` IllegalArgumentException if propertyName is not a recognized property

### removeDestinationKey

Removes a destination key.

If the given string is in the list of keys used for sorting destinations, it will be removed from the list.

Operation Name | `"removeDestinationKey"`
Parameters | `Object [] { destinationKey }` where: `destinationKey` is an object of type `java.lang.String` that specifies: The string to be removed from the list of sorting keys.
Signature | `String [] { "java.lang.String" }`
Returns | `void`

### unSet

Restore the given property to its default value.

Operation Name | `"unSet"`
Parameters | `Object [] { propertyName }` where: `propertyName` is an object of type `java.lang.String` that specifies: property to restore
Signature | `String [] { "java.lang.String" }`
Returns | `void`
Exceptions | `java.lang.IllegalArgumentException` UnsupportedOperationException if called on a runtime implementation.