这是struts2的一个拦截器报的错误,当你的form中的数据有问题,比如说
<input type="text" name="receiverLoginID" value="<%=name%>"/>
当 name值为NULL时,就出这个错了,所以你可以在当前页面加入以下标签
<div style="color:red">
<s:fielderror />
</div>
它就会显示拦截器的错误,并在struts的XML中对应action里加如
<result name="input">/AddProducts.jsp</result>
让他把错误返回到该页面就可以了
2、是action或者action中的result返回错误
3、如果是从user.id对象中的属性设置值,struts2会自动转换数据类型,如果是在页面中临时自定义的要转换自己类型。user是一个表单类对象的实例
4、<s:select>的两种用法
5、
参数中的值的类型在action中获得可以定义和其类型一样,而其它不是从对象取出来set的值,通过在action定义name相同的变量,获得的是String类型的值
<input type="text" name="receiverLoginID" value="<%=name%>"/>
当 name值为NULL时,就出这个错了,所以你可以在当前页面加入以下标签
<div style="color:red">
<s:fielderror />
</div>
它就会显示拦截器的错误,并在struts的XML中对应action里加如
<result name="input">/AddProducts.jsp</result>
让他把错误返回到该页面就可以了
2、是action或者action中的result返回错误
3、如果是从user.id对象中的属性设置值,struts2会自动转换数据类型,如果是在页面中临时自定义的要转换自己类型。user是一个表单类对象的实例
4、<s:select>的两种用法
<s:select list="#session.departList" listValue="departmentName" listKey="departmentId" name="departId">
<s:select name="competId" list="#{0:'普通用户',1:'审批人',2:'管理员'}"/>
第一种用法必须要有listKey属性,在action中通过name的get方法获得的是listKey、第二种是0的值
5、
<s:url><s:param/></s:url>
参数中的值的类型在action中获得可以定义和其类型一样,而其它不是从对象取出来set的值,通过在action定义name相同的变量,获得的是String类型的值