Właściwość executionTimeout określa maksymalny dopuszczalny czas na wysłanie przez produkt IMS Connect komunikatu do systemu IMS i odebranie z systemu IMS odpowiedzi. Wartość limitu czasu gniazda obejmuje wartość limitu czasu wykonania. W związku z tym wartość limitu czasu gniazda powinna być większa niż wartość limitu czasu wykonania, ponieważ w przeciwnym razie gniazdo może niepotrzebnie przekraczać limit czasu. Poniższa tabela zawiera sugerowane wartości limitu czasu gniazda oparte na wartościach limitu czasu wykonania.
Wartość limitu czasu wykonania (w milisekundach) | Zachowanie limitu czasu wykonania | Sugerowana wartość limitu czasu dla gniazda |
0 (lub brak wartości) | Zostanie użyta wartość domyślna z pliku konfiguracyjnego produktu IMS Connect. | Wartość limitu czasu gniazda powinna być większa niż wartość domyślna limitu czasu wykonania określona w pliku konfiguracyjnym produktu IMS Connect. |
1 - 36 000 000 | Limit czasu oczekiwania na odpowiedź upływa po określonej wartości milisekund. | Wartość limitu czasu dla gniazda powinna być większa niż wartość limitu czasu wykonania. |
-1 | Czas oczekiwania na odpowiedź jest nieograniczony. | Ustaw wartość limitu czasu dla gniazda na 0, aby czas oczekiwania połączenia na odpowiedź był nieograniczony. |
Wartość limitu czasu gniazda może być ustawiona dwoma sposobami. Do napisania aplikacji można użyć interfejsu CCI (Common Client Interface) JCA w celu uzyskania dostępu do metody pobierającej i ustawiającej udostępnianych przez klasę IMSInteractionSpec. Można również użyć narzędzi udostępnianych przez środowiska IDE platform Rational Software Developer, takich jak Rational Application Developer z opcjonalnym elementem J2EE Connector Architecture (J2C).
Korzystanie z aplikacji CCI do ustawienia wartości limitu czasu dla gniazda
Podczas tworzenia aplikacji CCI można korzystać z metody setSocketTimeout klasy IMSInteractionSpec. Aby użyć metody setSocketTimeout, należy utworzyć nową instancję klasy IMSInteractionSpec lub uzyskać klasę IMSInteractionSpec z konkretnej interakcji. Następnie należy ustawić wartość limitu czasu gniazda dla klasy IMSInteractionSpec za pomocą metody setSocketTimeout udostępnianej przez tę klasę IMSInteractionSpec. Na przykład:
interactionSpec.setSocketTimeout(timeoutValue1); interaction.execute(interactionSpec,input,output); interactionSpec.setSocketTimeout(timeoutValue2); interaction.execute(interactionSpec,input,output);
Korzystanie z produktu Rational Application Developer do ustawienia wartości limitu czasu gniazda
Wartość limitu czasu gniazda można ustawić w produkcie Rational Application Developer podczas początkowego definiowania właściwości powiązania IMS dla nowego komponentu Java bean J2C.
Aby zmodyfikować właściwości powiązania operacji, które zostały już zdefiniowane dla nowego komponentu Java bean J2C, należy wykonać następujące kroki: