WSIFOperation - Referenz auf synchrone und asynchrone Zeitlimits

Wenn Sie das Web Services Invocation Framework (WSIF) mit Java™ Message Service (JMS) verwenden, können Sie Zeitlimits für synchrone und asynchrone Operationen festlegen.

Standardwerte für diese Zeitlimits sind in der Datei "wsif.properties definiert:

# Die maximale Zeit in Millisekunden, die auf die Antwort auf eine synchrone Anforderung gewartet werden soll. 
# Es ist kein Standardwert definiert, sodass  unbegrenzte Zeit gewartet wird.
wsif.syncrequest.timeout=10000

# Die maximale Zeit in Sekunden, die auf die Antwort auf eine asynchrone Anforderung gewartet werden soll. 
# Wird dieser Wert nicht oder falsch definiert, wird die Standardeinstellung (kein Zeitlimit) verwendet.
wsif.asyncrequest.timeout=60
Wenn Sie diese Standardwerte verwenden, gilt für synchrone Anforderungen (wie z. B. den Aufruf der Methode executeRequestResponseOperation des Interface WSIFOperation) ein Zeitlimit von zehn Sekunden und für asynchrone Anforderung (wie z. B: für den Aufruf der Methode executeRequestResponseAsync des Interface WSIFOperation) ein Zeitlimit von 60 Sekunden.
Anmerkung:

Der Code, der beide Zeitlimitwerte verarbeitet, verwendet Millisekunden als Zeiteinheit. Die Methode getAsyncTimeout der Klasse WSIFProperties multipliziert den Wert von wsif.asyncrequest.timeout mit 1000, um den Wert von Sekunden in Millisekunden zu konvertieren.

Sie können diese Standardwerte für eine bestimmte Anforderung überschreiben, indem Sie eine WSDL-Erweiterung schreiben, die mit den WSDL-Elementen <jms:property> und <jms:propertyValue> eine JMS-Eigenschaft in der Operationanforderung setzt. Geben Sie als Eigenschaftsnamen den Namen des Zeitlimits aus der WSIF-Eigenschaftendatei an.

Das folgende Beispiel legt für synchrone Anforderungen ein Zeitlimit von zwei Minuten (120 Sekunden) fest:
<jms:propertyValue name="wsif.syncrequest.timeout" type="xsd:string" value="120000"/>
Das folgende Beispiel inaktiviert das Zeitlimit für asynchrone Anforderungen (der Wert null steht für eine unendliche Wartezeit):
<jms:propertyValue name="wsif.asyncrequest.timeout" type="xsd:string" value="0"/>

Nach Ablauf des Zeitlimits für eine asynchrone Anforderung wird kein Listener und keine Nachrichtendatenbank, die auf die Antwort wartet, benachrichtigt. Das Zeitlimit für asynchrone Anforderungen wird nur verwendet, um dem Korrelationsservice mitzuteilen, dass die gespeicherte WSIFOperation gelöscht werden kann. Weitere Informationen zum Korrelationsservice finden Sie im Artikel WSIFOperation - Referenz auf asynchrone Interaktionen.


Symbol, das den Typ des Artikels anzeigt. Referenzartikel



Symbol für Zeitmarke Letzte Aktualisierung: 25.05.2016
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=rwsf_synctimeouts
Dateiname:rwsf_synctimeouts.html