2014-07-18 30 views
0

這是表單對象: 在這裏,我將java註釋用於驗證表單對象,以便名稱字段的長度至少爲1. 下面是一個小代碼片段:spring mvc我在jsp中看不到錯誤消息

import javax.validation.constraints.Size; 

public class Persona { 
     @NotNull 
     @Size(min=1) 
     private String nome; 
     private String cognome; 
     private String dataNascita; 
     private String sesso; 
     private String cittaNascita; 
     private String cittaResidenza; 
     private String nazione; 
     private String codiceFiscale; 
     private String indirizzo; 
     private String telefonoCellulare; 
     private String telefonoFisso; 
     private String email; 

    public String getNome() { 
     return nome; 
    } 
    public void setNome(String nome) {import javax.validation.constraints.Size; 



public class Persona { 
     @NotNull 
     @Size(min=1) 
     private String nome; 
     private String cognome; 
     private String dataNascita; 
     private String sesso; 
     private String cittaNascita; 
     private String cittaResidenza; 
     private String nazione; 
     private String codiceFiscale; 
     private String indirizzo; 
     private String telefonoCellulare; 
     private String telefonoFisso; 
     private String email; 

    public String getNome() { 
     return nome; 
    } 
    public void setNome(String nome) { 
     this.nome = nome; 
    } 
     this.nome = nome; 
    } 

persona.jsp形式:

<%@taglib uri="http://www.springframework.org/tags/form" prefix="form"%> 
<html> 
<head> 
    <title>Spring MVC Form Handling</title> 
</head> 
<body> 

<h2>Informazioni Persona</h2> 
<form:form method="POST" action="/Esercizio1SpringMVC/addPersona"> 
    <table> 
    <tr> 
     <form:errors path="*" /> 
     <td><form:label path="nome">Nome</form:label></td> 
     <td><form:input path="nome" /></td> 
     <form:errors path="nome" /> 
    </tr> 

支票到達risultato.jsp,但即使當我輸入的名稱的任何文本控制器result.hasErrors()返回false表單域

package com.springMVC; 

import javax.validation.Valid; 

import org.springframework.stereotype.Controller; 
import org.springframework.validation.BindingResult; 
import org.springframework.web.bind.annotation.ModelAttribute; 
import org.springframework.web.bind.annotation.RequestMapping; 
import org.springframework.web.bind.annotation.RequestMethod; 
import org.springframework.web.servlet.ModelAndView; 
import org.springframework.ui.ModelMap; 




@Controller 
public class PersonaController { 

    @RequestMapping(value = "/", method = RequestMethod.GET) 
    public ModelAndView persona() { 
     return new ModelAndView("persona", "command", new Persona()); 
    } 

    @RequestMapping(value = "/addPersona", method = RequestMethod.POST) 
    public String addPersona(@ModelAttribute("SpringWeb") @Valid Persona persona, BindingResult result, 
    ModelMap model) { 

     if(result.hasErrors()) { 
      System.out.println("bbb"); 
      model.addAttribute("Persona", persona); 
      return "person"; 
     } 
     System.out.println("ccc"); 
     model.addAttribute("nome", persona.getNome()); 
     model.addAttribute("cognome", persona.getCognome()); 
     model.addAttribute("dataNascita", persona.getDataNascita()); 
     model.addAttribute("sesso", persona.getSesso()); 
     model.addAttribute("cittaNascita", persona.getCittaNascita()); 
     model.addAttribute("cittaResidenza", persona.getCittaResidenza()); 
     model.addAttribute("nazione", persona.getNazione()); 
     model.addAttribute("codiceFiscale", persona.getCodiceFiscale()); 
     model.addAttribute("indirizzo", persona.getIndirizzo()); 
     model.addAttribute("telefonoCellulare", persona.getTelefonoCellulare()); 
     model.addAttribute("telefonoFisso", persona.getTelefonoFisso()); 
     model.addAttribute("email", persona.getEmail()); 

     return "risultato"; 
    } 
} 



<%@taglib uri="http://www.springframework.org/tags/form" prefix="form"%> 
<html> 
<head> 
    <title>Spring MVC Form Handling</title> 
</head> 
<body> 

<h2>Informazioni Persona</h2> 
    <table> 
    <tr> 
     <td>Nome</td> 
     <td>${nome}</td> 
    </tr> 
    <tr> 
     <td>Cognome</td> 
     <td>${cognome}</td> 
    </tr> 
    <tr> 
     <td>Data di nascita</td> 
     <td>${dataNascita}</td> 
    </tr> 
    <tr> 
     <td>Sesso</td> 
     <td>${sesso}</td> 
    </tr> 
    <tr> 
     <td>Citta di nascita</td> 
     <td>${cittaNascita}</td> 
    </tr> 
    <tr> 
     <td>Citta di residenza</td> 
     <td>${cittaResidenza}</td> 
    </tr> 
    <tr> 
     <td>Nazione</td> 
     <td>${nazione}</td> 
    </tr> 
    <tr> 
     <td>Codice fiscale</td> 
     <td>${codiceFiscale}</td> 
    </tr> 
    <tr> 
     <td>Indirizzo</td> 
     <td>${indirizzo}</td> 
    </tr> 
    <tr> 
     <td>Telefono cellulare</td> 
     <td>${telefonoCellulare}</td> 
    </tr> 
    <tr> 
     <td>Telefono fisso</td> 
     <td>${telefonoFisso}</td> 
    </tr> 
    <tr> 
     <td>Email</td> 
     <td>${email}</td> 
    </tr> 
</table> 
</body> 
</html> 
+0

發表您的JSP文件 – Mufanu

+0

我甲肝e其實@Mufanu – user3494255

+0

@Adrian Thompson菲利普斯 – user3494255

回答

0

您應該在控制器示例中使用@RequestParam;

@RequestMapping(值= 「/ addPersona」,方法= RequestMethod.POST) 公共字符串addPersona(HttpServletRequest的請求,響應HttpServletResponse的, 區域設置區域設置,模型模式,

  @RequestParam(value = "name", required = false) String name 

){

在這裏

//使用名稱

}

相關問題