Rabbitmq経由で通信するコンポーネント間で統合テストを行っています。消費者がメッセージを処理しようとしたとき不正なハンドラをコールしようとすると、AMQPの処理が断続的に失敗する
@RabbitHandler
public List<Call> handle(CallRecordMonthRequest request){
return source.getCalls(request.getMonth(), request.getYear());
}
しかし、時には、それは次の例外で失敗します:
org.springframework.amqp.rabbit 私はこのハンドラメソッドを消費者に持っています。 listener.exception.ListenerExecutionFailedException:引数type = [クラス[B]、値= [{[B @ 7d202207]]でターゲットメソッド 'handle'を呼び出すことに失敗しました ... ... ... 原因: java.lang.NoSuchMethodException:org.rainn.reporting.communication.RabbitMqAdapter.han DLE([B)
Iはbyte[]
を受け取り、私は文字列にそれを回すとき、それは適切な型にデシリアライズすることを意味されているのと同じJSONペイロードあるハンドラを追加しました。