![]() |
1
2
调用之间的区别在于,一个通过命令总线,而另一个跳过命令总线并直接发布到事件总线。默认情况下,a
这意味着您发布的事件没有事务处于活动状态。Hibernate不喜欢这样。
解决办法是
|
|
2
0
似乎您忘记设置命令总线以允许事务管理。像下面的例子一样添加它,它将起作用:
更新 我的错,首先我使用的是Axon3.3(不是最新的),我认为您正在使用事件存储的自定义配置。 AxonSpringBoot默认使用InMemory事件存储,这就是为什么如果不定义自定义事件存储,事务将无法工作。 这是配置中缺少的:
第二代 这是我为其他提案做的一个简单示例,它工作得很好。 记住 另一个有趣的地方是,您必须定义聚合存储库,因为axon试图寻找与定义的聚合匹配的存储库。
同样对于传奇,你必须注册它们否则传奇永远不会被触发
在本例中是事件源,但是如果您对遗留迁移感兴趣,那么您可能会在迁移过程中使用genericjparepository(如果您需要示例,请告诉我)。 Hth. |
![]() |
Jordi · 事件源:处理事件架构更改 7 年前 |
![]() |
engma · 事件来源中的事件消费者和重复代码 7 年前 |
![]() |
WHITECOLOR · 活动来源:非商业重要活动 7 年前 |
![]() |
inf3rno · 事件源-删除事件相关文件 7 年前 |
![]() |
user3139545 · 理解具有数据流的持久实体 7 年前 |
|
user8280126 · 事件源/CQRS聚集索引和分区 7 年前 |
![]() |
Jim Aho · 我应该继续添加事件吗? 7 年前 |