Formatos JMS - objeto
El programa puede recuperar la carga útil de un mensaje de objeto JMS correlacionando el cuerpo del mensaje con un gráfico de datos SDO que representa el mensaje.
Cuerpo del objeto
Puede recuperar la carga útil de un mensaje de objeto JMS como una matriz de bytes Java™ (byte[]). En primer lugar, debe recuperar un gráfico de datos que representa el mensaje de la instancia de SIMessage. Ya que es común para todos los gráficos de datos que representan mensajes JMS, el objeto de datos raíz del gráfico contiene una propiedad denominada "data" y dicho objeto de datos, a su vez, contiene una propiedad denominada "value". Para un mensaje de objeto JMS, se puede acceder a la propiedad de valor como una matriz de bytes Java. La instancia del objeto original que representa la carga del mensaje se debe volver a crear a partir de la matriz de bytes.
SIMessage siMsg;
String format = siMsg.getFormat();
if (format.equals("JMS:object")) {
DataGraph graph = siMsg.getDataGraph();
byte[] payload = graph.getRootObject().getBytes("data/value");
if(payload != null) {
// Debe deserializar para recuperar el objeto original
ObjectInputStream in =
new ObjectInputStream(new ByteArrayInputStream(payload));
Object obj = in.readObject();
}
}