我用prooph和event store配置了所有的event source service buses。
但这是让我困惑的一件事。我必须调用:$eventPublisher = $this->container->get('event_publisher');在我的CommandBusFactory中,将事件发射器和事件总线粘合在一起,通过总线将域事件(从聚合根)分配到投影仪。如果没有这个,我的投影就不会被调用。
我的服务:链接
在Symfony DI (扩展和CompilerPass)方面有经验的人能帮我吗?
发布于 2017-11-13 21:16:08
事件发布服务器不是依赖链的一部分。这就是它没有由symfony DI初始化的原因。事件发布服务器是一个event store plugin,您已经正确地配置了symfony DI来调用方法attachToEventStore,但这不是自动完成的,而是只在您从DI请求服务时完成的。
为了解决这个问题,您需要为事件存储提供一个工厂,该工厂获取插件列表,并在每个插件上调用attachToEventStore方法。prooph/event-store-symfony-bundle包含这样一个工厂
https://stackoverflow.com/questions/47269737
复制相似问题