web工程login时提示空指针错误

web工程login时提示空指针异常在论坛中查找相关内容有一位和我的错误几乎相似http://bbs.csdn.net/topics/

web工程login时提示空指针异常
在论坛中查找相关内容有一位和我的错误几乎相似http://bbs.csdn.net/topics/390028891
但是我的按照给出解决步骤进行修改之后还是有问题
console上错误信息:
2013-1-28 11:21:14 org.apache.catalina.core.StandardWrapperValve invoke
严重: Servlet.service() for servlet jsp threw exception
java.lang.NullPointerException
at org.apache.jsp.check_jsp._jspService(check_jsp.java:72)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:393)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
at java.lang.Thread.run(Thread.java:619)

check.jsp源代码
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN""http://www.w3.org/TR/html4/loose.dtd">
<html>
  <head>
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">   
    <title>验证页面</title>
  </head>
  <body>
  <%
  String name=(String)request.getParameter("username");
  String password=(String)request.getParameter("password");
  String repassword=(String)request.getParameter("repassword");
  String sex=(String)request.getParameter("sex");
  String work=(String)request.getParameter("work");
  String[] love=(String[])request.getParameterValues("love");
  String show=(String)request.getParameter("show");
  String strLove="";
  for(int i=0;i<love.length;i++)
  {
  if(strLove.trim().equals(""))
  {
  strLove=strLove+"'"+love[i].toString()+"'";
  }
  else{
  strLove=strLove+","+love[i].toString()+"'";
  }
  }
   %>
   <font size="4" color="blue">您的信息是 </font><br>
   用户名:<%=name %><br>
   密码:<%=password %><br>
   确认密码:<%=repassword %><br>
   性别:<%=sex %><br>
   职业:<%=work %><br>
   爱好:<%=strLove %><br>


  个人说明:<%=show %><br>
  </body>
</html>

sign.html源代码
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"">
  <head>
  <meta http-equiv="Content-Type" content="text/html; charset=gb2312"/>
    <title>sign.html</title>
  </head>
  
  <body>
  <center>
  <form action="check.jsp" method="post">
  <table>
  <tr>
  <td align="right">
  用户名:
  </td>
  <td align="left">
  <input type="text" name="username"/>
  </td>
  </tr>
  
  <tr>
  <td align="right">
  密码:
  </td>
  <td align="left">
  <input type="password" name="password"/>
  </td>
  </tr>
  
    <tr>
  <td align="right">
 确认密码:
  </td>
  <td align="left">
  <input type="password" name="password"/>
  </td>
  </tr>
  
  <tr>
  <td align="right">
 性别:
  </td>
  <td align="left">
  <input type="radio" name="sex" value="male" checked/>男
  <input type="radio" name="sex" value="famale" />女
  </td>
  </tr>
  
   <tr>
  <td align="right">
 职业:
  </td>
  <td align="left">
  <select size="1" name="work">
  <option selected="selected">学生</option>
  <option>职员</option>
  <option>军人</option>
  <option>经理</option>
  <option>自由人</option>
  </select>
  </td>
  </tr>
  
 <tr>
  <td align="right">
  个人爱好
  </td>
  <td align="left">
    <input type="checkbox" love="love1" value=""/>电脑网络
    <input type="checkbox" love="love2" value=""/>影视娱乐
    <input type="checkbox" love="love3" value=""/>棋牌娱乐
    <input type="checkbox" love="love4" value=""/>读书读报
    <input type="checkbox" love="love5" value=""/>美酒佳肴
    <input type="checkbox" love="love6" value=""/>绘画书法
  </td>
  </tr>
  
   <tr>
  <td align="right">
 个人说明:
  </td>
  <td align="left">
  <textarea rows="show" rows="15" cols="40"></textarea>
  </td>
  </tr>
  
   <tr>


  <td align="right">
  <input type="submit" value="提交"/>
   </td>
  <td align="right">
  <input type="reset" value="重置" />
  </td>
  </tr>
  </table>
  </form>
  </center>
  </body>
</html>

在sign.html中已经将checkbox中的name属性进行了修改,但是在跳转的时候还是提示500
希望各位前辈能给我解答,谢谢
java login html
[解决办法]
check_jsp.java:72

你具体看看tomcat目录下的work文件夹下的check_jsp.java的72行是什么,
然后再自己分析下空指针异常,应该不难。。。
[解决办法]


 <%
  String name=(String)request.getParameter("username");
  String password=(String)request.getParameter("password");
  String repassword=(String)request.getParameter("repassword");
  String sex=(String)request.getParameter("sex");
  String work=(String)request.getParameter("work");
  String[] love=(String[])request.getParameterValues("love");
  String show=(String)request.getParameter("show");
  String strLove="";
  for(int i=0;i<love.length;i++)
  {
  if(strLove.trim().equals(""))
  {
  strLove=strLove+"'"+love[i].toString()+"'";
  }
  else{
  strLove=strLove+","+love[i].toString()+"'";
  }
  }
   %>


设置断点、调试一下这一段代码、看看具体是哪一行出的问题!!!
严重怀疑for(int i=0;i<love.length;i++)这个循环有问题
应该先判断love是否为null在行循环!
还有就是无论是getParameterValues还是getParameter都没有必要在前面(String[])或者(String)这样强制转换、因为getParameter返回的就是String类型!getParameterValues返回的就是String[]!