Как предотвратить проверку формы при возврате в многостраничную форму? У меня есть проверка в XML, и я хочу, чтобы она проверялась, когда вы нажимаете «Далее» (это работает), и что она не работает, когда вы нажимаете «Назад» (в моем случае это кнопка отмены). К сожалению, в моем случае проверка происходит в обоих случаях..... есть идеи? буду благодарен :)
Как предотвратить проверку формы при возврате в многостраничную форму? СТОЙКИ 1
comment
Извините, что спрашиваю, как это вообще связано со Struts 1.x?
- person Buhake Sindi   schedule 20.08.2014
comment
@BuhakeSindi Потому что срабатывает проверка S1?
- person Dave Newton   schedule 20.08.2014
comment
Ой! Теперь я понимаю ОП. У него есть XML-страница проверки, которую он создал. Он хочет, чтобы проверка не срабатывала при нажатии кнопки «Назад». Сначала вопрос не имел смысла (я думал, что OP проверил файл XML).
- person Buhake Sindi   schedule 20.08.2014
Ответы (1)
Есть способ решить эту проблему, он называется: Предотвращение двойной отправки.
Struts 1.x позволяет это делать, сохраняя токен после вызова действия. 3 метода, на которые вам нужно обратить внимание, взяты из Struts 1.x Action
класс:
resetToken
isTokenValid
saveToken
Таким образом, в вашем методе действия вам нужно будет выполнить проверку проверки токена, чтобы увидеть, выполнялось ли это действие ранее. Если он не был выполнен, продолжайте свои действия.
Ниже приведен пример того, как должна быть выполнена проверка:
public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception {
ActionForward forward = null;
boolean valid = isTokenValid(request);
if (!valid) {
//We HAVE NOT yet ran this action, let's execute our action.
//TODO: Complete the rest of the code.
//Map my forward
forward = .....;
//Finally, save this action for further execution.
saveToken(request);
} else {
//Forward, as usual....?
forward = .....;
}
return forward;
}
Существует руководство в Интернете., который объясняет всю концепцию сеанса токена для предотвращения двойной отправки (формы).
person
Buhake Sindi
schedule
20.08.2014