td bgcolor=yellow>性别:</td><td>男<input type=radio name=sex value=男<%=session.getAttribute("boy")%>>女<input type=radio name=sex value=女<%=session.getAttribute("girl")%>></td>这里你得 捕获 Exception ,在你取session中的值的时候

解决方案 »

  1.   

    if(name==null&&name.length()==0) //name为null时调用length()会异常
    改为
    if(name==null||name.length()==0)
      

  2.   

    kingfish(八百里秦川@龙城异客:
    谢谢你!
    但改后还是一样的
    java.lang.NullPointerException
    org.apache.jsp.modify_jsp.convert(modify_jsp.java:14)
    org.apache.jsp.modify_jsp._jspService(modify_jsp.java:88)
    org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:324)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    note The full stack trace of the root cause is available in the Apache Tomcat/5.0.28 logs.
      

  3.   

    String name=request.getParameter("name");
    那只能说明name是null, 你检查一下
      

  4.   

    但name 不是空的呀!
    如果null的话就回执行
    response.sendRedirect("login.jsp?errmsg="+errmsg+"&login=1");啊
    ?????????????
      

  5.   

    执行这个函数
    name=convert(name);
    时就异常了,不会执行到你说的那句
      

  6.   

    哦,那你看看我的这个函数
    <%!
      String convert(String str)
      {
         byte newstr[]=new byte[str.length()];
         for(int i=0;i<str.length();i++)
           newstr[i]=(byte)str.charAt(i);
           return new String(newstr);
      }
      String Replace(String str)
      {
         int index=0;
         while((index=str.indexOf("/n"))!=-1)
            str=str.substring(0,index)+"<br>"+str.substring(index+1);
         return str;  }
    %>
    有什么错啊
    我实在看不出呀!多谢了!
      

  7.   

    str.length() 时错, 相当null.length()
      

  8.   

    你是说name为null
    所以str.length()为null
    但我的String name=request.getParameter("name");是能够得到name的呀
    既然能得到那么str.length()就不是null的了啊
    ??????
      

  9.   

    java.lang.NullPointerException
    org.apache.jsp.modify_jsp.convert(modify_jsp.java:14)
                                      =======
                                      很明显
    你怎么知道不是
    null?
      

  10.   

    有道理;不过
    现在错误为:
    java.lang.NullPointerException
    org.apache.jsp.modify_jsp._jspService(modify_jsp.java:119)
    org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:324)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:802)并没有org.apache.jsp.modify_jsp.convert(modify_jsp.java:14);
    因为我该了一下;<%@ page import="java.sql.*"%>
    <%@page contentType="html/text;charset=gb2312" %>
    <%@include file="opendata.jsp"%>
    <%@ include file="convert.jsp"%>
    <%
    String name=request.getParameter("name");
    String NAME=convert(name);
    String confirm=request.getParameter("password");
    sql="select * from personal where name='"+NAME+"'";
    rs=smt.executeQuery(sql);
    String user=null;
    String email=null;
    String address=null;
    String password=null;
    String sex=null;
    int id=0;
    while(rs.next())
    {
     user=rs.getString(1);
     out.println(user);
     email=rs.getString(2);
     address=rs.getString(3);
     password=rs.getString(4);
     sex=rs.getString(5);
     id=rs.getInt(6);
    }
    if(NAME==null||NAME.length()==0)
    {
     String errmsg="err1";
     response.sendRedirect("login.jsp?errmsg="+errmsg+"&login=1");
    }
    else if(!confirm.equals(password))
      {
       String errmsg="err2";
       response.sendRedirect("login.jsp?errmsg="+errmsg+"&login=1");
      }if(sex.equals("boy"))
    {
     String boy="checked";
     session.setAttribute("boy",boy);
    }
    else
    {
     String girl="checked";
     session.setAttribute("girl",girl);}
    %> <center>
     <font color=blue size=4>修改个人数据--下面是你的数据</font>
     <hr>
     <center>
     <form action=update.jsp?id=<%=id%> method=post>
     <table border=1>
      <tr>
       <td bgcolor=yellow>ID</td><td><%=user%></td>
      </tr>
      <tr>
      <td bgcolor=yellow>性别:</td><td>男<input type=radio name=sex value=男<%=session.getAttribute("boy")%>>女<input type=radio name=sex value=女<%=session.getAttribute("girl")%>></td>
        </tr>
    <tr>
     <td bgcolor=yellow>Email</td>
     <td><input type=text size=40 name=email value=<%=email%>></td>
    </tr>
    <tr>
    <td bgcolor=yellow>住址</td><td><input type=text size=60 name=address value=<%=address%>></td>
    </tr>
    <tr>
    <td bgcolor=yellow>输入密码</td>
    <td>
    <input type=password size=10 name=password value=<%=password%>>
    </td>
    </tr>
    <tr>
    <td valign=top bgcolor=yellow>重新确认</td>
    <td><input type=password size=10 name=confirm></td>
    </tr>
    <tr align=center><td colspan=2>
    <input type=submit name=send value=修改></td>
     
    </tr>
     </table>
     </form>
     <hr>
    所以,我认为好象不是那点错?帮帮忙!