Метод проверки Spring 3 не проверяется - PullRequest
0 голосов
/ 26 июня 2011

У меня возникли некоторые проблемы, связанные с проверкой весной 3. Что у меня есть, так это Java Bean ....

public class User {

@NotEmpty
@Size(min=2, max=40)
private String name="";

@Email
private String email="";

public String getName(){
    return name;
}

public String getEmail(){
    return email;
}

public void setName(String name){

    this.name=name;
}

public void setEmail(String email){

    this.email=email;
}

}

Это метод, который ссылается на страницу, содержащую форму:

    @RequestMapping(value="/form", method=RequestMethod.GET)
public String form(Model model){


    model.addAttribute("user",new User());
    return "form";
}

И это метод в моем контроллере, который "должен" проверить

    @RequestMapping(value="/displayUser",method=RequestMethod.POST)
public String displayUser(Model model,@Valid User user,BindingResult result){


    if(result.hasErrors()){
       return "form";   
    }
    userList.add(user);
    model.addAttribute("user",user);

    return "displayUser";
}

Аннотация @Validate должна выполнять проверку, но в моем случае это не так.

Вы видите что-то не так в моем коде?

кстати, эта форма у меня есть "все очень просто, это только для целей тестирования

   <f:form method="post" action="displayUser" commandName="user">
 <table align="center" border="1">
  <tr>
  <td>Your details</td>
  </tr>
  <tr>
  <td><f:label path="name">Name:</f:label></td><td><f:input path="name" /></td><f:errors path="name"></f:errors>
  </tr>
  <tr>
   <td><f:label path="email">Email:</f:label></td><td><f:input path="email" /></td><f:errors path="name"></f:errors>
  </tr> 
  <tr>
  <td><input type="submit" value="register" /></td>
  </tr>
 </table>
</f:form>

Любой совет? (я использую Java 5 и там javax.validation.Validator не доступен)

1 Ответ

0 голосов
/ 26 июня 2011

Убедитесь, что добавили javax.validation validation-api и hibernate validator.Если вы используете maven, добавьте в свои зависимости следующее:

           <dependency>
                    <groupId>javax.validation</groupId>
                    <artifactId>validation-api</artifactId>
                    <version>1.0.0.GA</version>
            </dependency>


             <dependency>
                    <groupId>org.hibernate</groupId>
                    <artifactId>hibernate-validator</artifactId>
                    <version>4.0.2.GA</version>
            </dependency>

Включите аннотацию Spring, управляемую вашим приложением. Context

<mvc:annotation-driven />
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...