本帖最后由 Dreamfly_123 于 2012-07-13 11:16:53 编辑

解决方案 »

  1.   

    错误很明显,空指针异常
    String name
    String password1
    String password2
    分析应该有为null的,故getBytes会报空指针异常
      

  2.   

    你先打印request.getParameter("name") == null;我估计肯是true,你要转码之前,必须判断是否为null
      

  3.   

    空指针异常,调试一下应该可以看到是哪出的问题。
    猜测应该是你提交到此页面的表单中有某个<input />中没有设置 name="xx" 这样request.getParameter("name")就取不到值。
    你的代码还可以这样:
    专门定义一个转码的方法方便些
    /**
     * 汉字GET方法解码
     * 
     * @param str
     * @return
     */
    public String toChinese(String str) {
    try {
    return new String(str.getBytes("iso-8859-1"), "utf-8");
    } catch (UnsupportedEncodingException e) {
    e.printStackTrace();
    }
    return str;
    }
    另外,用户验证用javascript脚本 和 Ajax不是更好。
      

  4.   

    猜测应该是你提交到此页面的表单中有某个<input />中没有设置 name="xx" 这样request.getParameter("xx")就取不到值。
      

  5.   

    很明显这是在获取值的获取的对象为空,所以报空指针异常,楼主要确定姓名,密码,email,是否存在了request,并且是有值的
      

  6.   

    错误很明显,空指针异常
    String name
    String password1
    String password2
    分析应该有为null的,故getBytes会报空指针异常
      

  7.   

    谢谢各位大神,问题解决了,是因为register.jsp(checkregister.jsp的前一页面)中因为某些错误导致传参数不成功,已经改过来了,多谢各位了!