html:multibox赋值后在action中得不到的问题---急!!!
这两天做项目遇到一个很困惑的问题,可能比较简单但是我始终没有解决掉,特粘出来希望能得到高手的指点,谢谢了
问题是:我将数据库中查询到的数据依次循环到表单中,每行信息后有一个复选框,并给复选框赋唯一的id值,我想在此页面点击选中多个或一个复选框后可以进行数据的批删除,但是当我选中点击删除按钮后,页面跳转出现500,空指针错误。
jsp页面代码:
<html:form action="taskManageAction.do" scope="session">
<td width="34" align="left" class="text" style="CURSOR: hand" onClick="openwin('/taskManageAction.do');"><strong>删除</strong></td>
<logic:iterate id="checkd" name="check" scope="session">
...........
<td width="57">
<html:multibox property="selecteditems">
<bean:write name="checkd" property="rootID"/>
</html:multibox>
</td>
...........
</logicLiterate>
</html:form>
formbean代码:public class TaskManageForm extends ActionForm {
private String selecteditems[];
public String[] getSelecteditems()
{
return selecteditems;
}
public void setSelecteditems(String[] selecteditems)
{
this.selecteditems=selecteditems;
}
}
action代码:
public ActionForward execute(ActionMapping mapping, ActionForm form,HttpServletRequest request, HttpServletResponse response) {
TaskManageForm tmf=(TaskManageForm)form;
int j=tmf.getSelecteditems().length;
for(int i=0;i<j;i++)
{
System.out.println(tmf.getSelecteditems()[i]);
}
出现的异常:
HTTP Status 500 -
java.lang.NullPointerException
com.opensource.task.TaskManageAction.execute(TaskManageAction.java:49)
org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:465)
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:274)
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1422)
org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:505)
javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
com.opensymphony.module.sitemesh.filter.PageFilter.parsePage(PageFilter.java:123)
com.opensymphony.module.sitemesh.filter.PageFilter.doFilter(PageFilter.java:66)
com.opensource.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:178)