Exception thrown by getter for property age of bean org.apache.struts.taglib.htm
struts1.2老是报
Exception thrown by getter for property age of bean org.apache.struts.taglib.html.BEAN错误
代码如下
public class RegForm extends ActionForm
{
/**
*
*/
private static final long serialVersionUID = 1L;
private String username;
private String password;
private String sex;
private Integer age;
private Integer date;
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
public Integer getAge() {
return age;
}
public void setAge(Integer age)
{
this.age = age;
}
public Integer getDate()
{
return date;
}
public void setDate(Integer date) {
this.date = date;
}
public ActionErrors validate(ActionMapping mapping,HttpServletRequest request)
{
System.out.println("===================我是验证======================");
System.out.println("================= " + this + " **********************");
ActionErrors err = new ActionErrors();
if(!isAge())
{
err.add("age", new ActionMessage("非法年龄"));
}
if(!isDate())
{
err.add("date", new ActionMessage("非法日期"));
}
return err;
}
public boolean isAge()
{
if(age>100 || age<1)
{
return false;
}
return true;
}
public boolean isDate()
{
if(date>99999999 || date<10000101)
{
return false;
}
return true;
}
public String toString()
{
return "[username="+username+",password="+password+",sex="+age+",age="+age+",date="+date+"]";
}
}
struts-config.xml
<struts-config>
<data-sources />
<form-beans>
<form-bean name="RegForm" type="com.RegForm"></form-bean>
</form-beans>
<global-exceptions />
<global-forwards />
<action-mappings>
<action path="/validate"
scope="request"
parameter="method"
name="RegForm"
input="/../WEB-INF/classes/com/input.jsp"
validate="false"
type="com.IndexAction">
<forward name="index" path="/../WEB-INF/classes/com/index.jsp" />
<forward name="ok" path="/../WEB-INF/classes/com/ok.jsp" />
</action>
</action-mappings>
</struts-config>
index.jsp
<html:form action="/validate?method=register" method="post">
<table width="80%" cellpadding="0" cellspacing="0">
<tr>
<td>user:<html:text property="username" maxlength="11" styleClass="required" /></td>
<td>
<span id="advice-username" class="validation-advice" style="display:none;color:red">用户名不能为空,且只能是字母</span>
</td>
</tr>
<tr>
<td>password:<html:text property="password"/></td>
<td>
<span id="advice-password" class="validation-advice" style="display:none;color:red">密码不能为空</span>
</td>
</tr>
<tr>
<td>sex:<html:text property="sex"/></td>
<td>
<span id="advice-sex" class="validation-advice" style="display:none;color:red">性别不能为空</span>
</td>
</tr>
<tr>
<td>age:<html:text property="age"/></td>
<td>
<span id="advice-age" class="validation-advice" style="display:none;color:red">年龄不能为空且只能是数字</span>
</td>
</tr>
<tr>
<td>date:<html:text property="date"/></td>
<td>
<span id="advice-date" class="validation-advice" style="display:none;color:red">请输入日期</span>
</td>
</tr>
</table>
</html:form>
其中,我知道的原因是:
private Integer age;
private Integer date;
这两个字段是integer,我只要把integer改成string就没有问题,
但是,这样没道理。
急求答案