Package javax.jms
Interface ObjectMessage
- All Superinterfaces:
Message
An
ObjectMessage
object is used to send a message that contains
a serializable object in the Java programming language ("Java object").
It inherits from the Message
interface and adds a body
containing a single reference to an object. Only Serializable
Java objects can be used.
If a collection of Java objects must be sent, one of the
Collection
classes provided since JDK 1.2 can be used.
When a client receives an ObjectMessage
, it is in read-only
mode. If a client attempts to write to the message at this point, a
MessageNotWriteableException
is thrown. If
clearBody
is called, the message can now be both read from and
written to.
- Since:
- JMS 1.0
- See Also:
-
Field Summary
Fields inherited from interface javax.jms.Message
DEFAULT_DELIVERY_DELAY, DEFAULT_DELIVERY_MODE, DEFAULT_PRIORITY, DEFAULT_TIME_TO_LIVE
-
Method Summary
Modifier and TypeMethodDescriptionGets the serializable object containing this message's data.void
setObject
(Serializable object) Sets the serializable object containing this message's data.Methods inherited from interface javax.jms.Message
acknowledge, clearBody, clearProperties, getBody, getBooleanProperty, getByteProperty, getDoubleProperty, getFloatProperty, getIntProperty, getJMSCorrelationID, getJMSCorrelationIDAsBytes, getJMSDeliveryMode, getJMSDeliveryTime, getJMSDestination, getJMSExpiration, getJMSMessageID, getJMSPriority, getJMSRedelivered, getJMSReplyTo, getJMSTimestamp, getJMSType, getLongProperty, getObjectProperty, getPropertyNames, getShortProperty, getStringProperty, isBodyAssignableTo, propertyExists, setBooleanProperty, setByteProperty, setDoubleProperty, setFloatProperty, setIntProperty, setJMSCorrelationID, setJMSCorrelationIDAsBytes, setJMSDeliveryMode, setJMSDeliveryTime, setJMSDestination, setJMSExpiration, setJMSMessageID, setJMSPriority, setJMSRedelivered, setJMSReplyTo, setJMSTimestamp, setJMSType, setLongProperty, setObjectProperty, setShortProperty, setStringProperty
-
Method Details
-
setObject
Sets the serializable object containing this message's data. It is important to note that anObjectMessage
contains a snapshot of the object at the timesetObject()
is called; subsequent modifications of the object will have no effect on theObjectMessage
body.- Parameters:
object
- the message's data- Throws:
JMSException
- if the JMS provider fails to set the object due to some internal error.MessageFormatException
- if object serialization fails.MessageNotWriteableException
- if the message is in read-only mode.
-
getObject
Gets the serializable object containing this message's data. The default value is null.- Returns:
- the serializable object containing this message's data
- Throws:
JMSException
- if the JMS provider fails to get the object due to some internal error.MessageFormatException
- if object deserialization fails.
-