Eine OLTP Message-Driven Bean empfängt die Inbound-Nachricht als inMsg
-Parameter der onMessage()
-Methode. Das empfangene Objekt ist ein OltpMessage
-Objekt. Aus dem OltpMessage
-Objekt können Sie ein OltpMessageContext
-Objekt abrufen, das seinerseits Attribute der empfangenen Nachricht enthält und den dialogbasierten OLTP MessageDriven Beans als Factory zur Erstellung einer Reply Message dient:
Zugriff auf den Nachrichtenkontext:
OltpMessageContext oltpMsgCtx = inMsg.getMessageContext();
Zugriff auf den Nachrichteninhalt:
Das Objekt
OltpMessage
erlaubt einen Zugriff auf den Nachrichteninhalt, der in Form vonOltpMessageRecord-
oderOltpMessagePart-
Objekten verarbeitet wird.Im Falle eines
OltpMessagePart
-Objekts geben Sie an:String inMsgTxt = ""; if (inMsg.countMessageParts() > 0) { OltpMessagePart inMsgPart; Iterator it<OltpMessagePart> = inMsg.getMessageParts(); for ( ; it.hasNext(); ) { inMsgPart = it.next(); inMsgTxt += inMsgPart.getText(); } }
Im Falle eines
OltpMessageRecord
-Objekts geben Sie an:if (inMsg.countMessageRecords() > 0) { OltpMessageRecord inMsgRec; Iterator it<OltpMessageRecord> = inMsg.getMessageRecords(); for ( ; it.hasNext(); ) { inMsgRec = it.next(); inMsgTxt += inMsgRec.getText(); } }
Erstellen einer Reply Message (nur im Falle einer OLTP Message-Driven Bean für dialogbasierte Kommunikation):
Eine OLTP Message-Driven Bean für dialogbasierte Kommunikation verwendet das Interface
OltpMessageContext
, um einOltpMessage
-Objekt für die Reply Message zu erstellen:OltpMessage outMsg = oltpMsgCtx.createMessage();
Das Objekt OltpMessage muss mit Nachrichteninhalt versorgt werden (nur im Falle einer OLTP Message-Driven Bean für dialogbasierte Kommunikation). Verwenden Sie hierzu das Objekt OltpMessageRecord und/oder das Objekt OltpMessagePart:
Sie sollten die Antwortnachricht mit Hilfe von
OltpMessagePart
-Objekten aufbauen, wenn dem Empfänger der Nachricht eine in Nachrichtenteile strukturierte Antwort zugestellt werden soll. Ist der Empfänger eine UTM-Anwendung, dann liest diese jeden mit einemOltpMessagePart
-Objekt übergebenen Nachrichtenteil mit einem eigenen MGET-Aufruf.Wenn es nicht wichtig ist, dass die Antwortnachricht in Nachrichtenteile strukturiert wird, dann ist die Verwendung von
OltpMessageRecord
-Objekten vorteilhafter.
Das Code-Beispiel für "OLTP Message-Driven Beans für dialogbasierte Kommunikation" finden Sie OLTP Message-Driven Beans und ein Code-Beispiel für "OLTP Message-Driven Beans für asynchrone Kommunikation" finden Sie OLTP Message-Driven Beans .