代码如下:<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%@page import="org.liu.model.entity.Student"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%><html>
  <head>
  </head>
  <% List<Student> list=(List<Student>)session.getAttribute("studentSelect");%>
  <body>
   <table width="70%" align="center">
   <tr>
   <td>编号</td>
   <td>姓名</td>
   <td>性别</td>
   <td>年龄</td>
   <td>班级</td>
   <td>地址</td>
   <td>修改</td>
   </tr>
   <% for(int i=0;i<list.size();i++){%>
   <tr>
   <td><%=list.get(i).getId() %></td>
   <td><%=list.get(i).getName() %></td>
   <td><%=list.get(i).getSex() %></td>
   <td><%=list.get(i).getAge() %></td>
   <td><%=list.get(i).getCid() %></td>
   <td><%=list.get(i).getAddress() %></td>
   <td>
   <a href="update.jsp?id=<%=list.get(i).getId() %>&name=<%=list.get(i).getName() %>&mysex=<%=list.get(i).getSex() %>&myage=<%=list.get(i).getAge() %>&cid=<%=list.get(i).getCid() %>&address=<%=list.get(i).getAddress() %>">修改</a>
   </td>
   </tr>
   <%} %>
   </table>
  </body>
</html>链接页面  也就是出错的页面:
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%><html>
  <head>  </head>
<% String id=request.getParameter("id");
   String name=request.getParameter("name");
   String gbkName=new String(name.getBytes("ISO-8859-1"),"utf-8");
   String sex=request.getParameter("mysex");
   String gbkSex=new String(sex.getBytes("ISO-8859-1"),"utf-8");
   String age=request.getParameter("myage");
   String cid=request.getParameter("cid");
   String address=request.getParameter("address"); 
   String gbkAddress=new String(address.getBytes("ISO-8859-1"),"utf-8");
  %>
  <body>
  <center>
   <form action="action/isUpdate.jsp">
<input type="hiddon" name="id" value="<%=id %>"><br>
姓名:<input type="text" name="name" value="<%=gbkName %>"><br>
   性别:<input type="text" name="sex" value="<%=gbkSex %>"><br>
   年龄:<input type="text" name="age" value="<%=age %>"><br>
   班级:<input type="text" name="cid" value="<%=cid %>"><br>
   地址:<input type="text" name="address" value="<%=gbkAddress %>"><br>
   <input type="submit" value="修改">
   </form>
   </center>
  </body>
</html>
JDBC都没问题,可以查询出数据。但我点击那个修改链接后,update.jsp页面出错,但把文本框的value改成常量值后可以显示。请大家帮我看看  谢谢了!!

解决方案 »

  1.   

    update.jsp接收的到参数么?而且,没看到你让用户输入要修改项的地方啊。
      

  2.   

    HTTP Status 500 - --------------------------------------------------------------------------------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 /update.jsp at line 1815:     //String sex=request.getParameter("mysex");
    16:     //String gbkSex=new String(sex.getBytes("ISO-8859-1"),"utf-8");
    17:     String aget=request.getParameter("myage");
    18:     int age=Integer.parseInt(aget);
    19:     String cidt=request.getParameter("cid");
    20:     int cid=Integer.parseInt(cidt);
    21:     String address=request.getParameter("address"); 
    Stacktrace:
    org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:515)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:426)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
    root cause java.lang.NumberFormatException: null
    java.lang.Integer.parseInt(Unknown Source)
    java.lang.Integer.parseInt(Unknown Source)
    org.apache.jsp.update_jsp._jspService(update_jsp.java:74)
    org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:384)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
    note The full stack trace of the root cause is available in the Apache Tomcat/6.0.10 logs.第一个页面叫index.jsp  第二个叫update.jsp  我采用的是MVC模式。查询没问题  可以查出数据。上面是点击 index.jsp页面里的修改链接时出现的错误
      

  3.   


    可以接的到  我将所有的正型强制转换的注释后,再将value那里改为常量数字。可以显示出一些文本信息。如:姓名、地址。但性别和其他的出冲突。老和下一行数据显示在一行,而且还是乱码
      

  4.   

    你先把得到的数据打印出来,前面一个页面数据没有得到,错误显示的是null值就是第一个页面中有空值,一步步跳,看数据是否都传到了
      

  5.   


    17: String aget=request.getParameter("myage");
    18: int age=Integer.parseInt(aget);
    19: String cidt=request.getParameter("cid");
    20: int cid=Integer.parseInt(cidt);
    21: String address=request.getParameter("address");  
    这几句代码是哪个页面的,String aget=request.getParameter("myage");
    这个取到null值了吧
    lz你打日志看看aget这个值吧
      

  6.   

    LZ以get方式方式接受的参数。你断点调试或者把变量打印出来看看,应该是null值
    null在parseInt的时候都是报这个错误!!!!
    传递参数的问题
      

  7.   

    明显啊
    NumberFormatException 
    你那个i 是null
    list.get(i) 的i
      

  8.   

    17: String aget=request.getParameter("myage"); 取值为null  你页面 哪有 myage  ?
    18: int age=Integer.parseInt(aget);
      

  9.   

    你吧每个要传的参数都打印出来看看,哪个是null的!问题就出在哪!
      

  10.   

    应该是那个age是空的,可能性占到相当大的比例了,