エンティティビーンのシリアライズは、どうやるのが正しいの?

EJB3(JPA)で取得したエンティティをシリアライズしたいとき、具体的にはWebサービスでどっかに送り付けたいとき、循環参照をどうやって切るのが正しいんでしょうか?


例えば、ShohinからMakerに@ManyToOneのプロパティが、逆にMakerからShohinに@OneToManyのプロパティがあるとき、単純にWebサービスの戻り値に使おうとすると延々とShohinとMakerが参照しあって、スタックオーバーフローになってしまいます。