2014-01-27 55 views
2

我遇到了Grails 2.2.2的間歇性問題。Grails何時關閉/刷新Hibernate會話?

控制器1:保存與GORM的對象(例如,book.save()) 控制器2:在同一表上做了原生查詢與Groovy.sqlselect * from BOOK...

兩個控制器正在返回render ... as JSON,不使用GSP。

瀏覽器打緊接着連續兩個控制器:回調後控制器1命中控制器2

通常,這工作得很好,因爲我相信底層的Hibernate Session被刷新並在完成請求之後關閉。但在極少數情況下,第二個控制器觸發時行似乎沒有插入。但是,如果我手動刷新控制器,那麼行將被正確插入 - 所以刷新正在發生,比我預期的稍晚一點點。

在會話刷新之前瀏覽器是否有可能將響應視爲已完成?

回答