我正在使用JDeveloper 11.1.2.3.0 我在這裏有一個大問題。我創建一個簡單的頁面並插入一個表單,例如一個createInsert按鈕和一個提交按鈕。我運行這個頁面,一切都很好。我創建一個新記錄,填寫表單字段,然後提交。在這一刻,如果我按F5重新加載頁面,瀏覽器會要求我確認「要顯示此頁面,Firefox必須發送將重複之前執行的任何操作(例如搜索或訂單確認)的信息。「我不明白爲什麼它必須重複任何操作,我在提交操作和事務清理後檢查了髒事務。如果我從這個頁面移動到另一個並返回到第一個,它可以正常工作,F5刷新沒有問題。瀏覽器不允許頁面刷新後提交
如果我有一個包含多行的表,然後我更新第一行爲例,然後單擊第三行然後執行一次刷新(對上面的消息進行確認),第三行將獲取所有的信息第一行...
有誰知道如何處理這個問題?
它看起來不像ADF問題;你的表單正在執行'POST',並且瀏覽器在重複POST之前發出警告 - 這只是正常的行爲。當你離開並回來時,你正在做'GET'。爲什麼你一直打F5 - 雖然你的頁面在表單提交之後重新繪製,包括你剛做出的更改嗎? –
沒有特定的原因擊中F5,但這可能是用戶行爲,如果發生這種情況,就像我解釋的場景一樣,我的應用程序可能會遇到一些與其數據有關的嚴重問題。 –
然後,您需要在後端檢測到重複的POST並忽略它,或者執行某些操作[如Post/Redirect/Get模式](http://en.wikipedia.org/wiki/Post/Redirect/Get) ,所以刷新只會做GET。我不知道你的堆棧是否具有內置的功能,或者是否需要設計。 –