我已经集成了 symfony messenger 包,我正在尝试对该消息进行编码。它在 Symfony 3.4.4 版本中工作。但是它在 Symfony 3.4.28 版本中给出了上述错误。我在 symfony serialzer 组件中进行了跟踪,似乎 jsonEncoder 没有在 serialzer.php 中列出,这导致了这个问题。
在 symfony 序列化程序组件中排除 json 编码器的原因是什么。见下文 DoctrineTransportSender:
public function send(Envelope $envelope)
{
$encodedMessage = $this->encoder->encode($envelope);
}
//messenger configuration:
messenger:
transports:
# DSN: doctrine://$repository_alias/$queue_name
# most likely we do not need more repositories (unless there's a need for splitting MySQL table with messages)
main: "doctrine://default/test"
routing:
# message type to transport routes
Bundle\QueueBundle\Message\TestMessage: [ main ]
serializer:
enabled: true