2013-07-21 4 views
0

У меня есть две страницы jsp: page1.jsp с формой и page2.jsp, которая отображает сообщение, чтобы сообщить пользователю, произошла ли запись или нет.Предотвратить повторную отправку формы и расположений

Если форма успешно отправлена ​​и пользователь обновит страницу 2, произойдет другая вставка.

Я бы не использовал переменную сеанса, и установка атрибута запроса на странице2 не решила проблему (похоже, она не работает).

+1

Вы должны использовать шаблон post-redirect-get. –

+0

@DaveNewton: Спасибо, как я мог поддерживать запрос после перенаправления в struts 1 (через struts-config.xml и mapping.findForward в Action)? – Sefran2

+0

@DaveNewton: если вы напишете ответ, я приму его, – Sefran2

ответ

0

Вы можете дать попробовать это:

С page1.jsp установить атрибут запроса, когда управление достигает page2.jsp проверки для этого атрибута запроса, если он есть перенаправлять управление же Page2.jsp. Таким образом, когда управление перенаправляется на на тот же или другой ресурс, предыдущие объекты запроса и ответа больше не являются (т. Е. Как объект запроса, так и объект ответа будут уничтожены, потому что HTTP - это протокол без гражданства) И, как и после перенаправления, не будет данные, связанные с предыдущим запросом, и при обновлении page2.jsp не повторит предыдущую задачу.

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