先上传自己写的一个测试程序,是OK的,没有什么问题,action中可以获得checkbox的值:
index.jsp:
<form action="regist_regist.action" method="post">
<input type="checkbox" name="hobbys" value="篮球"/>
<input type="checkbox" name="hobbys" value="足球"/>
<input type="submit" value="注册">
</form>
RegistAction.java:
public String regist() {
for(int i=0;i<hobbys.size();i++) {
System.out.println(hobbys.get(i));
}
return SUCCESS;
}
public List getHobbys() {
return hobbys;
}
public void setHobbys(List hobbys) {
this.hobbys = hobbys;
}
但是自己要改动的一个项目中采用同样的办法就行不通了.....代码如下:
jsp中:
通过<c:foreach> 输出了2个:
<c:if test="${printLog.printDisuseSign==1}">
<input type="checkbox" name="printDisuseSign" value="${printLog.printCD}" />
</c:if>
action中:
private List printDisuseSign;
public List getPrintDisuseSign() {
return printDisuseSign;
}
public void setPrintDisuseSign(List printDisuseSign) {
this.printDisuseSign = printDisuseSign;
}
public String printDisuse() {
.........
for(int i=0;i<printDisuseSign.size();i++) {
System.out.println(printDisuseSign.get(i));
}
........
}
然后就在for循环中报了个nullporinterException.....有木有大神指点下