Hibernate双方向関連と遅延初期化

Hibernateで、双方向関連を持つノードをfindしたときにいきなり例外が起きるようになって困った。 よくドキュメントを見たら、双方向関連ではListや配列は使えないと書いてある。間違ってListを使っていたのが原因の模様。

でも実際には遅延初期化を使わなければListが使えていた。lazyをtrueにしたとたんに例外が発生するようになったみたい。仕方が無いので、indexは自前でpropertyをsetしてsave()しておいて、にはorder-byを指定してLinkedHashSetを使わせる。これで問題解決。