我们注意到grails-application中使用的某些纯Spring服务开始无法与新版本的grails进行事务处理。
我们在grails应用程序中使用Spring集成设置。主要部分是队列,由jdbc消息存储支持。 send方法位于标有@Transactional的grails服务中。在我们迁移到新版本的grails之前,仅在提交主事务后,消息才会出现在存储中。 在版本3.3.9(gorm = 6.1.10)中,即使挂起或回滚事务,也会显示该消息。
Spring Integration使用jdbcTemplate来存储消息。如果已配置,则JdbcTemplate正在使用事务管理器。因此,我们期望SI也应进行gorm的交易。而且确实发生过。
主要问题是我们缺少什么?可能新的Grails版本需要针对我们的案例进行其他配置吗?