2014-09-30 2 views
0

Это моя сущностьLocalDate в Спринг форме

@Entity 
public class User implements java.io.Serializable { 

@Id 
@GeneratedValue(strategy = GenerationType.AUTO) 
private int id; 


private String name; 

private String mobNum; 

private String email; 



String gender; 


    @Type(type="org.jadira.usertype.dateandtime.joda.PersistentLocalDateTime") 
    LocalDate bdate; 

public LocalDate getDate() { 
    return bdate; 
} 

public void setDate(LocalDate bdate) { 
    this.bdate = bdate; 
} 



public String getGender() { 
    return gender; 
} 

public void setGender(String gender) { 
    this.gender = gender; 
} 



public User() { 

} 


public String getName() { 
    return this.name; 
} 

public void setName(String name) { 
    this.name = name; 
} 


public String getMobNum() { 
    return this.mobNum; 
} 

public void setMobNum(String mobNum) { 
    this.mobNum = mobNum; 
} 


public String getEmail() { 
    return this.email; 
} 

public void setEmail(String email) { 
    this.email = email; 
} 

}

и вот моя весна-форма

<%@taglib uri="http://www.springframework.org/tags/form" prefix="form"%> 
<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%> 
<%@taglib uri="http://www.springframework.org/tags" prefix="spring"%> 

<%@page contentType="text/html" pageEncoding="UTF-8"%> 
<!DOCTYPE html> 
<html> 
<head> 
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 

</head> 
<body> 
    <form:form action="add_student_data.htm" method="POST" commandName="user"> 
    <table> 



      <tr> 
      <td><form:label path="name">Name</form:label></td> 
      <td><form:input path="name"/></td> 
      <td><font color="red" /><form:errors path="name" cssClass="error" /></td> 
     </tr> 



      <tr> 
      <td><form:label path="bdate" >Date Of Birth</form:label></td> 
      <td><form:input path="bdate"/></td> 
      <td><font color="red" /><form:errors path="bdate" cssClass="bdate" /></td> 
      </tr> 

      <tr> 
      <td><form:label path="gender" >Gender</form:label></td> 
      <td><form:radiobutton path="gender" value="M" label="M" /> 
      <form:radiobutton path="gender" value="F" label="F" /></td> 

      </tr> 

      <tr> 
      <td><form:label path="mobNum">Mob Num</form:label></td> 
      <td><form:input path="mobNum"/></td> 
      <td><font color="red" /><form:errors path="mobNum" ccssClass="error"/></td> 
       </tr> 

       <tr> 
       <td><form:label path="email">Email</form:label></td> 
       <td><form:input path="email"/></td> 
       <td><font color="red" /><form:errors path="email" cssClass="error" /></td> 
        </tr> 
     </table>  
       <input type="submit" value="submit"> 

    </form:form> 
    </body> 
</html> 

, когда я хочу, чтобы открыть эту ошибку FOM произойден как

"org.apache.jasper.JasperException: org.springframework.beans.NotReadablePropertyException: Недопустимое свойство 'dateOfBirt h 'класса bean [com.domain.User]: свойство bean' dateOfBirth 'не читается или имеет недопустимый метод getter: соответствует ли тип возвращаемого значения getter типу параметра setter? "

Я использую joda.org.time.LocalDate в объекте пользователя. В чем причина проблемы?

+2

сообщение об ошибке и код, который вы показать не в соответствии друг с другом. Однако у вас нет свойства 'bdate', у вас есть свойство' date'. У вас есть метод getDate и setDate. –

ответ

0

Ваше имя геттер/метод установки и имя переменной в JSP не совпадают, измените следующие методы из:

public LocalDate getDate() { 
    return bdate; 
} 

public void setDate(LocalDate bdate) { 
    this.bdate = bdate; 
} 

в

public LocalDate getBdate() { 
    return bdate; 
} 

public void setBdate(LocalDate bdate) { 
    this.bdate = bdate; 
} 
Смежные вопросы