Просмотр истек - все равно совершить действие? - PullRequest
1 голос
/ 12 марта 2012

Есть ли способ обойти ViewExpiredException, чтобы в любом случае зафиксировать действие?

Через richfaces 'a4j: actionparam Я установил всю необходимую информацию в своем компоненте поддержки.Если срок действия представления не истекает, это работает хорошо.

Когда срок действия представления равен , пользователь перенаправляется на страницу ошибки и возвращается на страницу, где он находился.К сожалению, его вклад исчез, и он должен напечатать его снова.Для более длинных, более сложных комментариев это может расстроить.

Идеи, которые могли бы работать, я не представляю, как их достичь, хотя:

  • прозрачно восстановитьпросмотреть в фоновом режиме и автоматически повторить действие
  • совершить действие без восстановления представления, затем перенаправить на новый вид этой же страницы
  • восстановить ввод пользователя после -> страница ошибки -> перенаправление страницы ввода

Есть ли другой способ, который мне не хватает?

Сокращенный, упрощенный фрагмент JSF:

<!-- within iteration over myBean.items as item -->
<h:inputTextarea value="#{myBean.comment}"/>
<a4j:commandButton action="#{myBean.addComment}">
    <a4j:actionparam value="#{item.id}" assignTo="#{myBean.selectedItemId}"/>
</a4j:commandButton>

Программный стек: richfaces 3.3.3, myfaces 2.0.x, prettyfaces

Примечание: по крайней мере, в настоящее время мне не нужно заботиться о XSS для этой формы.Доступ к функциональности упрощается, не требуя действительного состояния просмотра.

...