IMS 资源适配器的执行超时值的定义是:IMS Connect 将消息发送至 IMS™,然后接收来自 IMS 的响应这一过程可以花费的最长时间。有关执行超时值的详细信息,请参阅设置执行超时值和有效的执行超时值。
在引入 executionTimeout 属性之前,您只能设置一个全局级别的超时值,该值是在 IMS Connect 配置文件中指定的。与 IMS Connect 的每次交互都具有相同的超时值。
借助 executionTimeout 属性,可以对每次交互设置单独的超时值,而不是只能设置全局的超时值。如果尚未完成交互就超时了,IMS Connect 就会对 IMS 资源适配器返回错误消息。IMS 资源适配器将返回一个异常,指出 IMS 响应 IMS Connect 的持续时间已经超过了执行超时值。
注意:因为 IMS 资源适配器与 IMS Connect 之间的连接是持久连接,所以,当发生执行超时的时候,套接字不会关闭。该套接字仍然可供后续交互重用。
在对话式事务中,执行超时值适用于该对话的每次迭代。迭代由发送至 IMS 的一个输入消息和从 IMS 中接收到的一个输出消息组成。如果该对话的一个迭代超时,则整个对话就会结束。
如果为特定交互指定了有效的执行超时值,则在发生执行超时的时候,提交该交互的 Java™ 应用程序就会接收到 javax.resource.spi.EISSystemException 异常。如果指定了无效的执行超时值,则在发生执行超时的时候将抛出 javax.resource.NotSupportedException 异常。