spring集成的si延迟器组件中的问题。一旦服务器停机,延迟器的恢复就不会发生

spring集成的si延迟器组件中的问题。一旦服务器停机,延迟器的恢复就不会发生,spring,spring-mvc,spring-integration,oracle12c,Spring,Spring Mvc,Spring Integration,Oracle12c,我们在解决方案中使用了由消息存储支持的延迟器,如果某个spel表达式条件为真,则将消息流延迟15分钟。 但如果应用服务器在中间重新启动,那么delayer将成为解决方案的诅咒,所有消息都无法从delayer恢复,这将成为一种悬而未决的情况。 请建议。 代码: 问候 Ram你介意找点时间聊聊吗?我看你的配置没有任何问题,所以我需要问你一些问题,并调查你的应用程序。重新安排功能已经存在一段时间了。真的不清楚你有什么问题。。。如果你能想出一些我可以在本地复制的东西会更好。首先是Spring集成版本

我们在解决方案中使用了由消息存储支持的延迟器,如果某个spel表达式条件为真,则将消息流延迟15分钟。 但如果应用服务器在中间重新启动,那么delayer将成为解决方案的诅咒,所有消息都无法从delayer恢复,这将成为一种悬而未决的情况。 请建议。 代码:


问候
Ram

你介意找点时间聊聊吗?我看你的配置没有任何问题,所以我需要问你一些问题,并调查你的应用程序。
重新安排
功能已经存在一段时间了。真的不清楚你有什么问题。。。如果你能想出一些我可以在本地复制的东西会更好。首先是Spring集成版本?Artem,SI版本是4.1.2.0版本。让我告诉你如何重现这个问题。运行一个Web应用程序,它具有延迟15分钟的消息存储支持的延迟器,然后当您发布消息,然后在中间停止Web服务器时,15分钟不一定已经通过,这样当您启动Web服务器时,查看该消息是否被再次处理,并检查重新安排机制是否工作。当然,我们可以聊天,让我知道你的id,这样我就可以和你聊天了。不幸的是,没有。我需要一些足够短的测试用例,从框架的角度来玩,甚至调试。我想你对ID的意思是:你介意找点时间聊天吗?我看你的配置没有任何问题,所以我需要问你一些问题,并调查你的应用程序。
重新安排
功能已经存在一段时间了。真的不清楚你有什么问题。。。如果你能想出一些我可以在本地复制的东西会更好。首先是Spring集成版本?Artem,SI版本是4.1.2.0版本。让我告诉你如何重现这个问题。运行一个Web应用程序,它具有延迟15分钟的消息存储支持的延迟器,然后当您发布消息,然后在中间停止Web服务器时,15分钟不一定已经通过,这样当您启动Web服务器时,查看该消息是否被再次处理,并检查重新安排机制是否工作。当然,我们可以聊天,让我知道你的id,这样我就可以和你聊天了。不幸的是,没有。我需要一些足够短的测试用例,从框架的角度来玩,甚至调试。我想你对身份证的意思是这样的:
<int:delayer id="mydelayer" input-channel="DelayerOutputChannel"
        output-channel="letChannel" default-delay="1000"
        expression="payload.comm.code == 'ABC' ? #{eodConfigMap['ABC']} :( payload.comm.code == 'DEF' ? #{eodConfigMap['DEF']} : (payload.commRequest.code == 'GHI' ? #{eodConfigMap['GHI']} : #{eodConfigMap['FGH']}))"
        message-store="siMessageStore"   />

<util:map id="eodConfigMap" key-type="java.lang.String"
        value-type="java.lang.String" scope="singleton" map-class="java.util.HashMap">
        <entry key="FDG" value="1000"/>
        <entry key="ABC" value="1000"/>
        <entry key="DEF" value="1000"/>
        <entry key="GHI" value="1000"/>
    </util:map>

        <int-jdbc:message-store id="siMessageStore" data-source="jndiDataSource" region="DEF_DELAY"
     table-prefix="MY_TABLE_SIDELAY"/>