设置套接字超时值

在设置套接字超时值时,它必须大于执行超时值。

executionTimeout 属性就是 IMS™ Connect 将消息发送至 IMS,然后接收来自 IMS 的响应这一过程可以花费的最长时间。套接字超时值应该包括执行超时值。因此套接字超时值应该大于执行超时值,原因在于套接字超时值设置为小于执行超时值时可能会导致不必要的套接字超时。下表列示了根据执行超时值建议的套接字超时值。

执行超时值(毫秒) 执行超时行为 建议的套接字超时值
0(或者没有任何值) 使用 IMS Connect 配置文件中的缺省值。 套接字超时值应该大于 IMS Connect 配置文件中指定的执行超时缺省值。
1 - 3,6000,000 在经过指定的毫秒值之后,等待响应就超时。 套接字超时值应该大于执行超时值。
-1 将一直等待响应。 将套接字超时值设置为 0,以便连接会无限期等待。

可使用两种方法来设置套接字超时值。可使用公共客户机接口(CCI)来访问随 IMSInteractionSpec 提供的 getter 方法和 setter 方法来编写应用程序,或者将 Rational® Software Developer 平台的 IDE(如 Rational Application Developer)提供的工具与可选 J2EE 连接器体系结构(J2C)功能部件配合使用。

使用 CCI 应用程序来设置套接字超时值

如果要创建 CCI 应用程序,则您要对 IMSInteractionSpec 的 setSocketTimeout 方法具有访问权。要使用 setSocketTimeout 方法,请将新的 IMSInteractionSpec 实例化或通过特定交互获取 IMSInteractionSpec,并通过使用由 IMSInteractionSpec 类提供的 setSocketTimeout 方法来设置 IMSInteractionSpec 的套接字超时值。例如:

interactionSpec.setSocketTimeout(timeoutValue1);
interaction.execute(interactionSpec,input,output); 

interactionSpec.setSocketTimeout(timeoutValue2);
interaction.execute(interactionSpec,input,output);

使用 Rational Application Developer 设置套接字超时值

如果最初为新的 J2C Java™ Bean 定义了 IMS 绑定属性,则可使用 Rational Application Developer 画设置套接字超时值。

要编辑已经为新的 J2C Java Bean 定义的操作绑定属性,请完成下列步骤:

  1. 使用 Java 编辑器打开相应的 IMS 绑定 Java 文件。
  2. 查找 IMSInteractionSpec 类的 doclet 标记。
  3. 修改 doclet 标记以添加 socketTimeout 属性并为其指定值。如果已列示此属性,则修改它的值。
  4. 再次选择操作可扩展性元素,以指示已经进行了更改。
  5. 关闭编辑器并单击以保存更改。

反馈