type Exception reportmessage description The server encountered an internal error () that prevented it from fulfilling this request.exception java.lang.NullPointerException
files.UpdateUser.doPost(UpdateUser.java:45)
javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
note The full stack trace of the root cause is available in the Apache Tomcat/6.0.20 logs.
--------------------------------------------------------------------------------Apache Tomcat/6.0.20

解决方案 »

  1.   

    java.lang.NullPointerException
    files.UpdateUser.doPost(UpdateUser.java:45)
    如上已经打出了错误代码段,在编程中你应该要有意识,加入对值的为空的判断
    例:
    if(value!=null){}
      

  2.   

    java.lang.NullPointerException
    files.UpdateUser.doPost(UpdateUser.java:45)
    UpdateUser.java:45行空指针啊
      

  3.   

    UpdateUser.java:
     package files;import java.io.IOException;
    import javax.servlet.ServletException;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;import mysql.UserOpera;/**
     * Servlet implementation class UpdateUser
     */
    public class UpdateUser extends HttpServlet {
    private static final long serialVersionUID = 1L;
           
        /**
         * @see HttpServlet#HttpServlet()
         */
        public UpdateUser() {
            super();
            // TODO Auto-generated constructor stub
        } /**
     * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
     */
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    // TODO Auto-generated method stub
    //super.doGet(request, response);
    doPost(request,response);
    } /**
     * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
     */
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    // TODO Auto-generated method stub
    //super.doPost(request, response);
    request.setCharacterEncoding("gbk");
    String username = request.getParameter("username");
    String name = request.getParameter("name");
    String pass = request.getParameter("pass");
    String type = request.getParameter("type");
    if(type.equals("0")){
    type="admin";
    }else if(type.equals("1")){
    type="user";
    }
    if(name.equals("")||pass.equals("")||type.equals("")){
    response.sendRedirect("usermain.jsp");
    }
    else{
    UserOpera uo = new UserOpera();
    int flag = uo.updateUser(username,name,pass,type);
    if(flag!=0){
    response.sendRedirect("GetAllUser");
    }else{
    response.sendRedirect("error.jsp");
    }
    }
    }}UpdateUser.java:
    <%@ page language="java" contentType="text/html; charset=gbk"
        pageEncoding="gbk"%>
    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <%
      //request.setCharacterEncoding("gbk");
      String username = (String)request.getParameter("username");
      username=new String(username.getBytes("iso-8859-1"),("gbk"));
      String name = (String)request.getParameter("name");
      name=new String(name.getBytes("iso-8859-1"),("gbk")); 
      String pass = (String)request.getParameter("pass");
      String type = (String)request.getParameter("type");
    %>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=gbk">
    <title>修改用户信息</title>
    </head>
    <body background="images/bj.jpg">
    <table width="752"  cellpadding="0" cellspacing="0">
      <tr>
    <td width="77"  valign="top"></td>
    <td width="662" valign="top" cellpadding="0" cellspacing="0">
    <form id="UpdateUser" name="UpdateUser" method="post" action="UpdateUser" onsubmit="return check()">
    <table border="0" cellpadding="0" cellspacing="0" height="136" width="100%">
    <tr>
      <td width="27">&nbsp;</td>
      <td width="14">&nbsp;</td>
    <td align="center">修改用户信息</td>
    </tr>
    <tr>
      <td height="25"></td>
      <td>&nbsp;</td>
    <td><input type="hidden" name="username" value="<%=username %>"></td>
      <td align="center" valign="middle">真实姓名</td>
      <td colspan="5" valign="top"><input name="name" value="<%=name %>" maxlength="18" size="18" /><font color="red">*</font></td>
      <td>&nbsp;</td>
      </tr>
    <tr>
      <td height="14"></td>
      <td colspan="10" valign="top">&nbsp;</td>
      <td></td>
      </tr>
    <tr>
      <td height="25"></td>
      <td>&nbsp;</td>
              <td>&nbsp;</td>
              <td align="center" valign="middle">用户类型</td>
             <td colspan="5" valign="top"><input name="name" value="<%=name %>" maxlength="18" size="18" /><font color="red">*</font></td>
      <td>&nbsp;</td>
    <%
      if(type.equals("admin")){
    %>
    <select name="type" id="type">
    <option value="0" selected>管理员</option>
    <option value="1" >一般用户</option>
    </select>
    <% 
      }else if(type.equals("user")){
    %>
    <select name="type" id="type">
    <option value="0" >管理员</option>
    <option value="1" selected>一般用户</option>
    </select>
    <%
      }
    %>

    </td>
              <td>&nbsp;</td>
              <td></td>
      </tr>
    <tr>
      <td height="14"></td>
      <td colspan="10" valign="top">&nbsp;</td>
      <td></td>
      </tr>
    <tr>
      <td height="25"></td>
      <td>&nbsp;</td>
      <td>&nbsp;</td>
      <td align="center" valign="middle">密码</td>
      <td colspan="5" valign="top"><input name="pass" value="<%=pass %>" type="password" maxlength="18" size="18" /><font color="red">*</font></td>
      <td>&nbsp;</td>
      </tr>
    <tr>
      <td height="14"></td>
      <td colspan="10" valign="top">&nbsp;</td>
      <td></td>
      </tr>
    <tr>
      <td height="25"></td>
      <td>&nbsp;</td>
      <td>&nbsp;</td>
      <td align="center" valign="middle">确认密码</td>
      <td colspan="5" valign="top"><input name="passag" value="<%=pass %>" type="password" maxlength="18" size="18" /><font color="red">*</font></td>
      <td>&nbsp;</td>
      </tr>
    <tr>
      <td height="14"></td>
      <td colspan="10" valign="top" >&nbsp;</td>
      <td></td>
      </tr>
    <tr>
      <td height="24"></td>
      <td>&nbsp;</td>
      <td>&nbsp;</td>
      <td align="center" valign="top"><label>
        <input name="save" type="submit" value="保存" />
      </label></td>
      <td colspan="2" valign="top"><label>
        <input name="back" type="button" value="返回"/>
      </label></td>
      <td>&nbsp;</td>
      <td>&nbsp;</td>
      <td></td>
      </tr>
    </table>
    </form>
    </td>
    </tr>
    </table>
    </body>
    </html>
      

  4.   

    上面这个是我的Jsp页面的代码和servlet代码,,帮我看看该怎么改吧
      

  5.   

    打印一下看一看JSP页面中的 request.getParameter("") 赋给的变量 有没有值 
      

  6.   

    if(type.equals("0")){
    type="admin";
    }else if(type.equals("1")){
    type="user";
    }
    if(name.equals("")||pass.equals("")||type.equals("")){
    ...改成
    if("0".equals(type)){
    type="admin";
    }else if("1".equals(type)){
    type="user";
    }
    if("".equals(name)||"".equals(pass)||"".equals(type)){
      

  7.   

    空指针呐 空指针    貌似最近上csdn的人 平率都少了
      

  8.   

    String type = request.getParameter("type"); 
    看下你调用updateUser之前的那个页面是否传递了type值,这个值没有传过来,或者说你根本没有设置
      

  9.   

    目前跟这个没关系,现在出现的是另一个问题:
    type Exception reportmessage description The server encountered an internal error () that prevented it from fulfilling this request.exception org.apache.jasper.JasperException: An exception occurred processing JSP page /UpdateUser.jsp at line 85: <%
    6:   //request.setCharacterEncoding("gbk");
    7:   String username = (String)request.getParameter("username");
    8:   username=new String(username.getBytes("iso-8859-1"),"gbk");
    9:   String name = (String)request.getParameter("name");
    10:   name=new String(name.getBytes("iso-8859-1"),"gbk"); 
    11:   String pass = (String)request.getParameter("pass");
    Stacktrace:
    org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:505)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:416)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:342)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:267)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    root cause java.lang.NullPointerException
    org.apache.jsp.UpdateUser_jsp._jspService(UpdateUser_jsp.java:59)
    org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:374)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:342)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:267)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    note The full stack trace of the root cause is available in the Apache Tomcat/6.0.20 logs.
    --------------------------------------------------------------------------------Apache Tomcat/6.0.20
      

  10.   

    UpdateUser.jsp
    <%@ page language="java" contentType="text/html; charset=gbk"
        pageEncoding="gbk"%>
    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <%
      //request.setCharacterEncoding("gbk");
      String username = (String)request.getParameter("username");
      username=new String(username.getBytes("iso-8859-1"),"gbk");
      String name = (String)request.getParameter("name");
      name=new String(name.getBytes("iso-8859-1"),"gbk"); 
      String pass = (String)request.getParameter("pass");
      String type = (String)request.getParameter("type");
      System.out.println(username);
      System.out.println(name);
      System.out.println(pass);
      System.out.println(type);
      
    %>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=gbk">
    <title>修改用户信息</title>
    </head>
    <body background="images/bj.jpg">
    <table width="752"  cellpadding="0" cellspacing="0">
      <tr>
    <td width="77"  valign="top"></td>
    <td width="662" valign="top" cellpadding="0" cellspacing="0">
    <form id="UpdateUser" name="UpdateUser" method="post" action="UpdateUser" onsubmit="return check()">
    <table border="0" cellpadding="0" cellspacing="0" height="136" width="100%">
    <tr>
      <td width="27">&nbsp;</td>
      <td width="14">&nbsp;</td>
    <td align="center">修改用户信息</td>
    </tr>
    <tr>
      <td height="25"></td>
      <td>&nbsp;</td>
    <td><input type="hidden" name="username" value="<%=username %>"></td>
      <td align="center" valign="middle">真实姓名</td>
      <td colspan="5" valign="top"><input name="name" value="<%=name %>" maxlength="18" size="18" /><font color="red">*</font></td>
      <td>&nbsp;</td>
      </tr>
    <tr>
      <td height="14"></td>
      <td colspan="10" valign="top">&nbsp;</td>
      <td></td>
      </tr>
    <tr>
      <td height="25"></td>
      <td>&nbsp;</td>
              <td>&nbsp;</td>
              <td align="center" valign="middle">用户类型</td>
              <td colspan="5" valign="middle">
    <%
      if(type.equals("0")){
    %>
    <select name="type" id="type">
    <option value="0" selected>管理员</option>
    <option value="1" >一般用户</option>
    </select>
    <% 
      }else if(type.equals("1")){
    %>
    <select name="type" id="type">
    <option value="0" >管理员</option>
    <option value="1" selected>一般用户</option>
    </select>
    <%
      }
    %>
    </td>
              <td>&nbsp;</td>
              <td></td>
      </tr>
    <tr>
      <td height="14"></td>
      <td colspan="10" valign="top">&nbsp;</td>
      <td></td>
      </tr>
    <tr>
      <td height="25"></td>
      <td>&nbsp;</td>
      <td>&nbsp;</td>
      <td align="center" valign="middle">密码</td>
      <td colspan="5" valign="top"><input name="pass" value="<%=pass %>" type="password" maxlength="18" size="18" /><font color="red">*</font></td>
      <td>&nbsp;</td>
      </tr>
    <tr>
      <td height="14"></td>
      <td colspan="10" valign="top">&nbsp;</td>
      <td></td>
      </tr>
    <tr>
      <td height="25"></td>
      <td>&nbsp;</td>
      <td>&nbsp;</td>
      <td align="center" valign="middle">确认密码</td>
      <td colspan="5" valign="top"><input name="passag" value="<%=pass %>" type="password" maxlength="18" size="18" /><font color="red">*</font></td>
      <td>&nbsp;</td>
      </tr>
    <tr>
      <td height="14"></td>
      <td colspan="10" valign="top" >&nbsp;</td>
      <td></td>
      </tr>
    <tr>
      <td height="24"></td>
      <td>&nbsp;</td>
      <td>&nbsp;</td>
      <td align="center" valign="top"><label>
        <input name="save" type="submit" value="保存" />
      </label></td>
      <td colspan="2" valign="top"><label>
        <input name="back" type="button" value="返回"/>
      </label></td>
      <td>&nbsp;</td>
      <td>&nbsp;</td>
      <td></td>
      </tr>
    </table>
    </form>
    </td>
    </tr>
    </table>
    </body>
    </html>这是我的jsp代码,不知道该怎么改,麻烦各位英雄好汉帮我看看,非常感谢