2011-08-12 34 views
1

我应该怎么下载在spring.know注释与验证工作是在我的课例如未知吹塑代码:我应该在哪里下载与jsr-303在春季一起工作?

public String register2(@Valid User user , BindingResult br) 
    { 
     if(br.hasErrors()) 
     { 
      return "edit"; 
     } 
     //System.out.println("you registers!"); 
     return "thanks"; 
    } 

@Valid是未知的,我应该下载工作,JSR-303标准。其中库在春天mcv?我应该在哪里下载? 以及我如何在eclipse中设置helious? 感谢

编辑:我的代码附加=>

我控制器=>

package codes; 

import java.util.Map; 

import javax.validation.Valid; 
import javax.validation.Validator; 

import org.apache.jasper.tagplugins.jstl.core.Out; 
import org.springframework.beans.factory.annotation.Autowired; 
import org.springframework.ui.Model; 
import org.springframework.validation.BindingResult; 
import org.springframework.validation.BindingResultUtils; 
import org.springframework.web.bind.annotation.RequestMapping; 
import org.springframework.web.bind.annotation.RequestMethod; 
import org.springframework.web.bind.annotation.RequestParam; 
import org.springframework.web.portlet.ModelAndView; 


@org.springframework.stereotype.Controller 

public class Controller { 


    @RequestMapping(value="/register/" , method=RequestMethod.GET) 
    public String register(Model model) 
    { 
     model.addAttribute("myUser",new User()); 
     return "edit"; 
    } 
    @RequestMapping(value="/register/" , method=RequestMethod.POST) 
    public String register2(ModelAndView model,@Valid User myUser , BindingResult br) 
    { 

     try 
     { 
     if(br.hasErrors()) 
     { 

      return "edit"; 
     } 
     else 
     { 
      System.out.println(myUser); 
      System.out.println(myUser.getName()); 
      System.out.println(myUser.getFamily()); 
      System.out.println("salam"); 
      return "thanks"; 
     } 
     } 
     catch (Exception e) { 
      // TODO: handle exception 
      System.out.println(e.getMessage()); 
     } 
     return "thanks"; 
    } 

} 

我的文件edit.jsp(形式)=>

<%@ page language="java" contentType="text/html; charset=ISO-8859-1" 
    pageEncoding="ISO-8859-1"%> 
<%@taglib prefix="sf" uri="http://www.springframework.org/tags/form" %> 
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 
<html> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> 
<title>Register</title> 
</head> 
<body> 
<div> 

<sf:form method="post" modelAttribute="myUser" > 


<label for="USER_NAME">name:</label> 
<sf:input path="name" id="USER_NAME"/> 
<sf:errors path="name" ></sf:errors> 
<br> 
<label for="USER_FAMILY">family:</label> 
<sf:input path="family" id="USER_FAMILY"/> 
<br> 
<input type="submit" value="REGISTER" /> 



</sf:form> 




</div> 



</body> 
</html> 

注意:只有当我的用户对象是invalide我得到异常,当thatz有效我不给予免除

回答

2

您可以使用Hibernate Validator

要运行它,你需要将这些罐子添加到您的项目:

  • 的Hibernate验证的* .jar
  • 验证-API的* .jar
  • SLF4J的API的* .jar

你可以在Hibernate Validator package找到他们所有的人。

+0

我添加了所有这些,但我给:java.lang.NoSuchMethodError:org.slf4j.impl.StaticLoggerBinder.getSingleton()Lorg/slf4j/impl/StaticLoggerBinder; –

+0

尝试添加slf4j-log4j * .jar和log4j * .jar以及。 – craftsman

+0

现在当我运行在tomcat我给:log4j:警告没有appender可以发现记录器(org.apache.commons.digester.Digester.sax)。 log4j:WARN请正确初始化log4j系统。 log4j:WARN请参阅http://logging.apache.org/log4j/1.2/faq.html#noconfig了解更多信息。当我在jboss中运行时,我给了:java.lang.IllegalStateException:BindingResult和bean名称'user'的普通目标对象都不可用作为请求属性 –

相关问题