Dieses Attribut bestimmt, wie die Sitzung empfangene Nachrichten bestätigt. Dieses Attribut gilt nur für MDBs mit Bean-gesteuerten Transaktionen (Transaktionstyp = Bean).
- Automatische Bestätigung
- Die Sitzung bestätigt automatisch die Zustellung jeder Nachricht.
- Zulässigkeit doppelter Nachrichten bestätigen
- Die Sitzung bestätigt die Zustellung von Nachrichten bei
Bedarf. Dies Einstellung führt wahrscheinlich zur doppelten Zustellung von Nachrichten, wenn
JMS ausfällt. Diese Einstellung sollte deshalb nur von Konsumentenanwendungen genutzt werden, die doppelte Nachrichten
tolerieren können.
Wie in der EJB-Spezifikation definiert, können Clients die Methode Message.acknowledge() nicht zum Bestätigen von Nachrichten verwenden. Wenn der Wert CLIENT_ACKNOWLEDGE im Aufruf 'createxxxSession' übergeben wird, werden Nachrichten automatisch vom Anwenddungsserver bestätigt, und die Methode Message.acknowledge() wird nicht verwendet.
Anmerkung:
Die Bestätigung wird gesendet, wenn die Nachricht gelöscht wird.
Wenn Sie eine nicht transaktionsorientierte Message-driven Bean (MDB) haben, löscht das System
die Nachricht beim Bean-Start oder bei Beendigung der Bean.
Wenn die Bean eine Ausnahme generiert und deshalb nicht abgeschlossen wird, führt das System eine der folgenden Aktionen aus:
- Wenn das System so konfiguriert ist, dass die Nachricht bei Beendigung der Bean gelöscht wird,
wird die Nachricht einer neuen Instanz der Bean zugestellt, so dass es eine neue Gelegenheit zur Verarbeitung
der Nachricht gibt.
- Wenn das System so konfiguriert ist, dass die Nachricht beim Start der Bean gelöscht wird, geht die Nachricht verloren.
Die Nachricht
wird beim Start der Bean gelöscht, wenn die Servicequalität auf
Bestmöglich, nicht persistent eingestellt ist.
Bei allen anderen Servicequalitäten wird die Nachricht bei Beendigung der Bean gelöscht.