各ページにフォームと「保存して続行」ボタンがある複数のページがあるウィザードのような登録を作成しようとしています。各フォームのデータを休止状態のセッションに保存し、ユーザーが確認したときに登録の最後にのみDBに保存したい。私は Hibernate の専門家ではありませんが、「長いセッション」を作成する必要があることは理解しました。それ、どうやったら出来るの?トランザクションを開いたままにしておきますか? あるリクエストから別のリクエストへの「ダーティ」エンティティを取得するにはどうすればよいですか? このようなことを行うGWTPアクションハンドラがあるとします
//page1 action
public myAction1Result execute(myAction1Action action,ExecutionContext context) throws ActionException {
Session session = HibernateUtil.getSessionFactory().getCurrentSession();
session.getTransaction().begin();
User entityUser = new User();
entityUser.setName(action.getName());
session.save(entityUser);
return new myAction1Result();
}
トランザクションが開かれるまで、userEntity は DB に保存されず、一時的なものになります。別のactionHandlerで取得するにはどうすればよいですか?