Я никогда не использовал встроенный механизм проверки в Struts 2, так как я предпочитаю проверку на стороне клиента, чтобы избежать дополнительного обхода.Это сугубо личный выбор, а не стандарт.
Во-первых, я предлагаю вам не использовать Action
, а использовать ActionSupport
: ActionSupport
предоставляет множество функций из коробки, и вам не нужноделать все самостоятельно.
Я предполагаю, что вы используете defaultStack
, и если это так, то он предоставляет из коробки Prepare Interceptor
, который заботится о подготовке любых значений до вызова самого действия.
В вашем случае validate
вызывается перед методом execute
, поэтому у вас никогда не будет возможности заново заполнить значения, которые вам нужны в вашем JSP.
Все, что вам нужнонеобходимо убедиться, что в вашем классе действий есть метод prepare()
.Вот более подробная информация об этом перехватчике:
Подготовка перехватчика FAQ: Как мы повторно заполняем элементы управления при сбое проверки