1

を呼び出して、すべてのセッションを読み取り専用に設定しましたsetDefaultReadOnly(true)。ただし、明示的に を呼び出した後でも、更新は機能しませんsession.update(entity)。なぜこれが起こっているのかがわかります。休止状態は、このエンティティが汚れていることを知りません。

私の質問は、同期する必要があるこのエンティティに変更を加えたことを休止状態に伝えるにはどうすればよいですか? エンティティをマージしようとしましたsession.merge(entity)が、うまくいきませんでした。

4

2 に答える 2

1

エンティティの状態を変更する前に、読み取り専用にしないでください: session.setReadOnly(entity, false)

次に、エンティティを編集し、通常どおりにフラッシュ/コミットにダーティ チェックを実行させます。

于 2012-10-23T16:53:58.040 に答える
0

これを試して:

session.refresh(entity)

于 2012-10-23T12:48:15.117 に答える