Кто-нибудь знает стандартный шаблон для этого?
Да, шаблон Post-Redirect-Get . Добавьте <redirect/>
к интересующим вас случаям навигации, чтобы выполнить перенаправление на запрос GET после POST. Затем кнопка «Назад» перейдет к запросу GET. В JSF 2.x вы также можете сделать это, добавив к результату параметр ?faces-redirect=true
.
Однако у него есть недостаток, когда ваше веб-приложение плохо разработано таким образом, что вы отправляете POST-запросы со страницы на страницу, а не POST-запросы к себе (предпочтительно со вкусом ajax). Таким образом, любой bean-объект в области запросов больше не доступен в перенаправленном GET-запросе.
Кроме того, когда вы используете командные ссылки вместо выходных ссылок для простой ванильной навигации по страницам (например, ссылки в меню и т. Д.), Они должны быть привязаны к выходным ссылкам. Использование POST здесь совершенно не имеет значения, они должны быть получены с самого начала.
В идеале, наверняка в веб-приложениях JSF 1.x вообще не должно быть никаких случаев навигации, если вы хотите оптимизировать SEO, создавать закладки и работать с пользователем.