Struts2 редактировать страницу проверки? - PullRequest
0 голосов
/ 07 марта 2011

У меня есть таблица, которая содержит профиль пользователя, и ниже которой я дал кнопку (Изменить профиль), с помощью которой пользователь может обновить свой профиль, когда пользователь нажимает кнопку Изменить профиль, будет отображаться новая страница.который содержит всю информацию о пользователе и заполняется из базы данных.

Проблема, с которой я сталкиваюсь, заключается в том, что здесь на этой странице не происходит проверка, скажем, пользователь удаляет свое имя пользователя и пытается обновить егопрофиль, который он должен показывать * Требуется имя пользователя вместо того, чтобы выдавать какую-то ошибку, я заполняю проверку, что здесь не происходит, потому что данные поступают из базы данных, но я не уверен, может ли кто-нибудь помочь мне в этом.

1 Ответ

0 голосов
/ 07 марта 2011

Поскольку вы не опубликовали код, я не уверен, какой метод проверки вы используете или что вы пробовали. Вот пример действия, использующего метод validate() для обработки проверки формы.

Изначально я забыл упомянуть, что вам нужно изменить форму, чтобы она отправляла "myAction! Submit", а не просто "myAction".

public class MyAction extends ActionSupport {
    /**
     * Your profile, as loaded from the database.
     */
    private Profile profile;

    /**
     * SkipValidation is required so that the validate() method is not invoked
     * prior to the execute() method. Otherwise, all fields would be blank and
     * we would end up showing validation errors on all fields.
     */
    @SkipValidation
    @Override
    public String execute() throws Exception {
        return INPUT;
    }

    @Override
    public void validate() {
        if (StringUtils.isEmpty(profile.getUsername())) {
            addFieldError("profile.username", "User Name is required.");
        }

        // place any additional validations here...
        // you can and should create convenience methods for performing validations.
    }

    public String submit() throws Exception {
        // persist the changes and return an appropriate response
        // e.g., redirect somewhere
        return SUCCESS;
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...