# JMSMessageCursorRuntimeMBean

Overview | Related MBeans | Attributes | Operations

## Overview

This runtime MBean represents a handle to a server-side JMS message result set. It is used for paging through large sets of messages. Messages are returned in an array of CompositeData objects that contain the message header fields and additional attributes.

Since | 9.0.0.0
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.management.runtime.JMSMessageCursorRuntimeMBean` For more information, see: CompositeData
Factory Methods | No factory methods. Instances of this MBean are created automatically.
Subtypes | The following MBeans extend or implement this MBean type:
JMSDestinationRuntimeMBean JMSDurableSubscriberRuntimeMBean JMSMessageManagementRuntimeMBean | JMSServerRuntimeMBean

## Attributes

This section describes the following attributes:

Name Parent | Type

### Name

The name of this configuration. WebLogic Server uses an MBean to implement and persist the configuration.

Privileges | Read only
Type | java.lang.String

### Parent

Return the immediate parent for this MBean

Privileges | Read/Write
Type |

### Type

Returns the type of the MBean.

Privileges | Read only
Type | java.lang.String

## Operations

This section describes the following operations:

closeCursor getCursorEndPosition getCursorSize getCursorStartPosition getItems getMessage | getMessage getNext getPrevious sort

### closeCursor

Releases the server-side resources associated with the cursor and removes the runtime MBean instance.

Operation Name | `"closeCursor"`
Parameters | `Object [] { cursorHandle }` where: `cursorHandle` is an object of type `java.lang.String` that specifies: The cursor handle.
Signature | `String [] { "java.lang.String" }`
Returns | `Void`
Exceptions | `weblogic.management.ManagementException`

### getCursorEndPosition

Returns the cursor end position in the result set.

Operation Name | `"getCursorEndPosition"`
Parameters | `Object [] { cursorHandle }` where: `cursorHandle` is an object of type `java.lang.String` that specifies: The cursor handle.
Signature | `String [] { "java.lang.String" }`
Returns | `Long`
Exceptions | `weblogic.management.ManagementException`

### getCursorSize

Returns the number of items in the result set.

Operation Name | `"getCursorSize"`
Parameters | `Object [] { cursorHandle }` where: `cursorHandle` is an object of type `java.lang.String` that specifies: The cursor handle.
Signature | `String [] { "java.lang.String" }`
Returns | `Long`
Exceptions | `weblogic.management.ManagementException`

### getCursorStartPosition

Returns the cursor start position in the result set.

Operation Name | `"getCursorStartPosition"`
Parameters | `Object [] { cursorHandle }` where: `cursorHandle` is an object of type `java.lang.String` that specifies: The cursor handle.
Signature | `String [] { "java.lang.String" }`
Returns | `Long`
Exceptions | `weblogic.management.ManagementException`

### getItems

Returns an array of items from the specified cursor location. The new cursor start position will be the location after the old cursor end position. The size of the array returned is determined by the count argument. An array smaller than the "count" value is returned if there are fewer items from the specified start position to the end of the result set. A null value is returned if the size of the return array is zero. In this case, the cursor position will not change.

For more information, see:

- CompositeData

Operation Name | `"getItems"`
Parameters | `Object [] { cursorHandle, start, count }` where: `cursorHandle` is an object of type `java.lang.String` that specifies: The cursor handle. `start` is an object of type `java.lang.Long` that specifies: The new cursor start location. `count` is an object of type `java.lang.Integer` that specifies: The maximum number of items to return.
Signature | `String [] { "java.lang.String", "java.lang.Long", "java.lang.Integer" }`
Returns | `class`
Exceptions | `weblogic.management.ManagementException`

### getMessage

Returns the message associated with the specified cursor handle.

For more information, see:

- CompositeData

Operation Name | `"getMessage"`
Parameters | `Object [] { cursorHandle, messageHandle }` where: `cursorHandle` is an object of type `java.lang.String` that specifies: The handle of the cursor. `messageHandle` is an object of type `java.lang.Long` that specifies: The handle of the message within the cursor.
Signature | `String [] { "java.lang.String", "java.lang.Long" }`
Returns | `CompositeData`
Exceptions | `weblogic.management.ManagementException` ManagementException Thrown when an error occurs while performing the operation.

### getMessage

Given a JMS message ID this method returns the corresponding message from the queue. If no message with the specified message ID exists on the destination, a null value is returned.

For more information, see:

- CompositeData

Operation Name | `"getMessage"`
Parameters | `Object [] { cursorHandle, messageID }` where: `cursorHandle` is an object of type `java.lang.String` that specifies: The handle of the cursor. `messageID` is an object of type `java.lang.String` that specifies: The JMS message ID of the requested message.
Signature | `String [] { "java.lang.String", "java.lang.String" }`
Returns | `CompositeData`
Exceptions | `weblogic.management.ManagementException`

### getNext

Returns an array of items starting from the current cursor end position. The new cursor start position is set to be the location of the first item returned to the caller. The new cursor end position is set according to the size of the array returned, which is determined by the count argument. An array smaller than the "count" value is returned if there are fewer items from the specified start position to the end of the result set. A null value is returned if the size of the array is zero. In this case, the cursor position will not change.

For more information, see:

- CompositeData

Operation Name | `"getNext"`
Parameters | `Object [] { cursorHandle, count }` where: `cursorHandle` is an object of type `java.lang.String` that specifies: The cursor handle. `count` is an object of type `java.lang.Integer` that specifies: The maximum number of items to return.
Signature | `String [] { "java.lang.String", "java.lang.Integer" }`
Returns | `class`
Exceptions | `weblogic.management.ManagementException`

### getPrevious

Returns an array of items up to the current cursor start position. The new start position will be placed at the location of the first item in the set returned to the caller. The new cursor end position will be placed at the location after the last item in the set that is returned.

For more information, see:

- CompositeData

Operation Name | `"getPrevious"`
Parameters | `Object [] { cursorHandle, count }` where: `cursorHandle` is an object of type `java.lang.String` that specifies: The cursor handle. `count` is an object of type `java.lang.Integer` that specifies: The maximum number of item to return.
Signature | `String [] { "java.lang.String", "java.lang.Integer" }`
Returns | `class`
Exceptions | `weblogic.management.ManagementException`

### sort

Sorts the entire message result set managed by the cursor according to the JMS header attributes specified. The cursor position is set to the new position of the message corresponding to the "start" location before the sort is performed. The method returns the new cursor position.

For more information, see:

- CompositeData

Operation Name | `"sort"`
Parameters | `Object [] { cursorHandle, start, fields, ascending }` where: `cursorHandle` is an object of type `java.lang.String` that specifies: The handle of the cursor. `start` is an object of type `java.lang.Long` that specifies: The location of the message before the sort that will be the first message returned after the sort. A value of -1 will place the cursor start position at the head of the new sort order. `fields` is an object of type `[Ljava.lang.String;` that specifies: The JMS header attributes on which to sort. `ascending` is an object of type `[Ljava.lang.Boolean;` that specifies: Determines whether the sort of the corresponding fields element is in ascending or descending order.
Signature | `String [] { "java.lang.String", "java.lang.Long", "[Ljava.lang.String;", "[Ljava.lang.Boolean;" }`
Returns | `Long`
Exceptions | `weblogic.management.ManagementException` ManagementException Thrown when an internal JMS error occurs while processing the request.