Die Builddeskriptoroption
defaultServiceTimeout gibt die maximal gültige Anzahl an Millisekunden an, die zwischen zwei Ereignissen vergehen.
- Im Fall einer Rich-UI-Anwendung treten die Ereignisse auf, wenn der Rich-UI-Proxy von EGL (auf dem Anwendungsserver) einen Web-Service aufruft und wenn der Proxy eine Antwort empfängt.
- Im Fall eines mit EGL generierten Java™-Anforderers treten die Ereignisse auf, wenn die EGL-Laufzeit einen Webservice aufruft und wenn dieser Code eine Antwort empfängt.
Wenn die Antwort länger als die angegebene maximale Zeit braucht, gibt die EGL-Laufzeit die Ausnahmebedingung ServiceInvocationException aus.
Das Festlegen eines Zeitlimits ist teilweise nur durch Versuch und Irrtum möglich:
- Beachten Sie dabei eine Reihe von Faktoren wie den Datenverkehr im lokalen Netz, den Datenverkehr im Internet und die Antwortzeit des Servers. Diese Faktoren bedeuten, dass zwei Aufrufe desselben Service möglicherweise unter unterschiedlichen Bedingungen auch unterschiedlich viel Zeit benötigen.
- Beachten Sie auch die Art der Anwendung. Wenn Ihr Code auf eine Kreditzusage wartet, sollten Sie einen größeren Wert für das Zeitlimit festlegen, damit dem Benutzer nicht zweimal Gebühren berechnet werden. Wenn Ihr Code ein Angebot in einer Onlineauktion abgibt, sollten Sie das Zeitlimit sehr kurz festlegen, damit der Benutzer schnell ein weiteres Angebot abgeben kann.
- Verwenden Sie Zeitlimitwerte, die sich um mindestens eine Sekunde voneinander unterscheiden.
Die Option defaultServiceTimeout ist für
Rich-UI und für mit EGL generiertes Java verfügbar.
Für Rich-UI können Sie den Wert durch Festlegen der Eigenschaft timeout in der Anweisung call überschreiben, die den Service aufruft.
Der Standardwert ist eine unendliche Wartezeit. (In EGL Version 7.5.1 ist der Standardwert 10.000).
Kompatibilität
Tabelle 1. Überlegungen zur Kompatibilität bei 'defaultServiceTimeout'| Plattform |
Problem |
| COBOL-Generierung |
Die Builddeskriptoroption ist unwirksam. |
| Rich-UI |
Die Builddeskriptoroption hat während des Zugriffs auf einen dedizierten Service keine Wirksamkeit. |