09.12.2012 Views

Advanced Queuing - Oracle

Advanced Queuing - Oracle

Advanced Queuing - Oracle

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

General Features of JMS<br />

Object Message<br />

An ObjectMessage is used to send a message that contains a serializable Java object.<br />

It inherits from Message and adds a body containing a single Java reference. Only<br />

serializable Java objects can be used. If a collection of Java objects must be sent, one<br />

of the collection classes provided in JDK 1.2 can be used. The objects can be read or<br />

written using the methods getObject() and setObject(...).To use Object<br />

Messages, create the queue table with the SYS.AQ$_JMS_OBJECT_MESSAGE or<br />

AQ$_JMS_MESSAGE payload types.<br />

Example Code<br />

public void enqueue_new_orders(QueueSession jms_session, BolOrder new_order)<br />

{<br />

QueueSender sender;<br />

Queue queue;<br />

ObjectMessage obj_message;<br />

}<br />

try<br />

{<br />

/* get a handle to the new_orders queue */<br />

queue = ((AQjmsSession) jms_session).getQueue("OE", "OE_neworders_que");<br />

sender = jms_session.createSender(queue);<br />

obj_message = jms_session.createObjectMessage();<br />

obj_message.setJMSCorrelationID("RUSH");<br />

obj_message.setObject(new_order);<br />

jms_session.commit();<br />

}<br />

catch (JMSException ex)<br />

{<br />

System.out.println("Exception: " + ex);<br />

}<br />

AdtMessage<br />

An AdtMessage is used to send a message that contains a Java object that maps to<br />

an <strong>Oracle</strong> Object type. These objects inherit from Message and add a body<br />

containing a Java object that implements the CustomDatum or ORAData interface.<br />

See Also: <strong>Oracle</strong>9i Java Developer’s Guide for information about the<br />

CustomDatum and ORAData interfaces<br />

Creating Applications Using JMS 12-29

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!