我有一个简单的 Spring Integration 2.0.1 聚合器设置,使用 SimpleMessageStore 以及定义的常规 Spring MessageGroupStoreReaper,以便能够实现分组超时机制(它在 Spring Integration 1.0 中仅用作聚合器的“超时”参数。 4)。
我已经调试并验证了消息在 SimpleMessageStore 中基于 groupId 正确聚合,但在超时时 MessageGroupStoreReaper 失败,并出现“无法通过 getter 访问属性'消息'”AccessException。确切的错误位于MessagingMethodInvokerHelper 类中,它断言消息字段不为空。似乎在调用程序执行期间聚合的消息不可用,从而导致“消息的方法参数无效:期待单个有效负载。” IllegalStateException。
此问题的原因可能是什么以及如何解决?
我已经尝试更新到 2.0.6,但问题仍然存在。
***编辑我将我的 SI 依赖项更新为 2.2.5,但这并没有解决我的问题。我使用 Spring 3.0.7。