結構ハマったのでメモ。
例えばニュースとカテゴリがMany-to-Oneで紐付いていたとする。(ニュースは一つのカテゴリを持つ)
この場合、ニューステーブルにカテゴリIDを保持するが、紐付いているカテゴリが論理削除済みであると、シリアライズ時に解決できないエラーに遭遇してしまうことが判明。
カテゴリを作成した後、そのカテゴリを紐付けてニュースを作成。その後紐付けていたカテゴリ自体を論理削除すると、ニューステーブルにはカテゴリIDが残ったままになる。
この状態でニュースエンティティをシリアライズしようとするとEntityNotFoundExceptionが発生し、処理が止まってしまう。
当然といえば当然だが、無ければ無いでnullをセットしておいて欲しいものである。
下記サイトのやりとりを見て判明。
https://github.com/schmittjoh/serializer/issues/101