Unterstützung von transaktionsorientiertem, wiederherstellbarem Messaging über WS-ReliableMessaging
Wenn Ihre WS-ReliableMessaging-Anwendung im Web-Container ausgeführt wird und eine verwaltete Servicequalität verwendet, können Sie über WS-ReliableMessaging die Unterstützung für transaktionsorientiertes, wiederherstellbares Messaging bereitstellen.
Informationen zu diesem Vorgang
- Auf der Requester-Seite des Web-Service findet die Transaktion zwischen der Anwendung und dem lokal verwalteten Speicher statt.
- Das WS-ReliableMessaging-Protokoll stellt die Nachricht der Providerseite des Web-Service zu, wo eine andere Transaktion zwischen dem zweiten verwalteten Speicher und der Zielanwendung stattfindet.
Wenn die Eigenschaft enableTransactionalOneWay bei einer unidirektionalen Nachrichtensendung auf der abgehenden (Requester-)Seite auf true gesetzt ist, wird der Sendevorgang in dem Transaktionskontext des Anwendungsthreads durchgeführt. (Beachten Sie, das bei einem abgehenden bidirektionalen Nachrichtenaustausch keine Transaktionen unterstützt werden.)
Wenn die Eigenschaft inOrderDelivery auf der eingehenden (Provider-)Seite auf true gesetzt ist, wird eine eingehende Nachricht in einer Transaktion an die Anwendung versendet. Bei einem eingehenden bidirektionalen Nachrichtenaustausch wird die Antwort ebenfalls in dieser Transaktion generiert, aber erst gesendet, nachdem diese Transaktion festgeschrieben wurde.
- WS-AtomicTransactions und WS-ReliableMessaging schließen sich gegenseitig aus, wenn WS-ReliableMessaging mit einem verwalteten Speicher für die Unterstützung eines transaktionsorientierten wiederherstellbaren Messaging verwendet wird.
- Wenn in WS-ReliableMessaging die Verwendung eines speicherinternen Speichers konfiguriert ist, gibt es Fälle, in denen für bidirektionale Aufrufe eine WS-AtomicTransaction zwischen der Quelle und dem Ziel für Reliable Messaging eingesetzt werden kann. In diesen Fällen bietet WS-ReliableMessaging nur Schutz vor Netzausfällen, aber nicht vor Serverausfällen.
Wenn Sie das transaktionsorientierte, wiederherstellbare Messaging über WS-ReliableMessaging unterstützen möchten, führen Sie die im Artikel Zugesicherte Zustellung von Nachrichten an Web-Services über WS-ReliableMessaging hinzufügen beschriebenen Schritte und außerdem die folgenden zusätzlichen Schritte aus:
Vorgehensweise
- Wenn Sie das transaktionsorientierte, wiederherstellbare Messaging für abgehende (Requester-) unidirektionale Nachrichtensendungen aktivieren möchten, setzen Sie beim Entwickeln Ihrer JAX-WS-Web-Service-Anwendung die Eigenschaft enableTransactionalOneWay in der jaxWS-Anforderungskontextzuordnung auf Boolean.TRUE (oder die Zeichenfolge true).
- Wenn Sie das transaktionsorientierte Messaging für eingehenden (Provider-) unidirektionalen und bidirektionalen Nachrichtenaustausch aktivieren möchten, verwenden Sie beim Konfigurieren Ihrer WS-ReliableMessaging-Richtlinie entweder die Administrationskonsole, um die Option Nachrichten in der gesendeten Reihenfolge zustellen auszuwählen, oder verwenden Sie das Tool wsadmin, um die Eigenschaft inOrderDelivery auf true zu setzen.