StoredProcOutboundGateway 的回复超时

Reply Time out for StoredProcOutboundGateway

我对 spring 集成中 StoredProcOutboundGateway 的回复超时 属性 有疑问。我已经阅读了文档,它说在 Gateway 的直接通道的情况下,回复超时将不起作用。但是在外部集成网关的情况下,即 StoredProcOutboundGateway 它说
"when sending to a DirectChannel, the invocation will occur in the sender’s thread so the failing of the send operation may be caused by other components further downstream "

根据我的设计,我的 StoredProcOutboundGateway 回复发送到直接 channel.Will StoredProcOutboundGateway 在回复超时到期后抛出异常? .为了重新创建这个场景,我在 StoredProcOutboundGateway.handleRequestMessage 方法的第一行放置了一个调试点并等待配置的回复超时,但它没有抛出任何异常,即使在配置时间后它也返回了成功的响应。

<int:gateway id="idGateway" service-interface="Gateway"> <int:method name="getStoreProcData" request-channel="store.req.channel" reply-channel="store.reply.channel" /> </int:gateway> <int-jdbc:stored-proc-outbound-gateway stored-procedure-name="GE_PKG.GET_PRC" ignore-column-meta-data="true" reply-timeout="2000" request-channel="store.req.channel" reply-channel="store.reply.channel" is-function="false" ............other cursor config </int-jdbc:stored-proc-outbound-gateway>在此处输入代码 <int:channel id="store.req.channel" /> <int:channel id="store.reply.channel" /> Spring-集成 V4..1.2 DB oracle ojdbc6

reply-timeout 仅适用于 reply-channel 可以阻塞的情况 - 例如有界的 QueueChannel 已满。

即这是 sendreply-channel 的超时。

DirectChannel永远不会发生。