注意这句:java.lang.NullPointerException
org.apache.jsp.booking.bookinglist_jsp._jspService(bookinglist_jsp.java:118)
这说明你的bookinglist.jsp由tomcat转换成了servlet,文件名是bookinglist_jsp.java,它位于$Tomcat$\work\Standalone\localhost\下的目录下,你最好找到这个文件看看出错的118行对应你的jsp文件的那一行,你肯定是对一个空的reference进行了操作
org.apache.jsp.booking.bookinglist_jsp._jspService(bookinglist_jsp.java:118)
这说明你的bookinglist.jsp由tomcat转换成了servlet,文件名是bookinglist_jsp.java,它位于$Tomcat$\work\Standalone\localhost\下的目录下,你最好找到这个文件看看出错的118行对应你的jsp文件的那一行,你肯定是对一个空的reference进行了操作
<%
String user_id_tmp=(String) session.getAttribute("user_id");
if(user_id_tmp==null)
{
%>
中间是HTML
<%
}
else
{
%><body>
<br><table width="100%" border="1" align="center" cellpadding="0" cellspacing="0" bordercolor="#89A5CF">
<tr>
<td width="100%">
<table width="100%" border="0" align="center" cellpadding="0" cellspacing="1" bordercolor="#89A5CF">
<%
String type=(String)session.getAttribute("user_type");
String sql="",sql_p="",sql_t="",sql_r="",sql_s="",user_id="",tname="",rname="",sname="";
int i=0; int pageno = 0;//初始化当前页码
String currentpage = request.getParameter("pageno");//取得当前页码参数
//如果不为空,则将当前页码转换为整型数
if (currentpage != null)
pageno=Integer.parseInt(currentpage);
//初始化计数器、开始记录、每页显示记录和总页数
int count = 0, begin = 0, pagesize =100, totalpage = 1;
//如果当前页码小于1,则让当前页码为1(即首页)
if(pageno < 1)
pageno = 1;
//计算开始记录
begin = (pageno * pagesize -pagesize + 1);
ResultSet rs=null;
String position=request.getParameter("value_i");
sql_p="select * from BOOKINGLIST where LOCATION_ID='"+position+"'";
ResultSet rs_p=UserBean.executeQuery(sql_p);
while(rs.next())
{
count++;
if((count >= begin)&&(count < begin+pagesize))
{
int bookinglist_id=rs_p.getInt("BOOKINGLIST_ID");
user_id=rs_p.getString("USER_ID");
int tno=rs_p.getInt("TNO");
int rno=rs_p.getInt("RNO");
int sno=rs_p.getInt("SNO");
int status=rs.getInt("STATUS");
sql_t="select TNAME from TIME whereTNO='"+tno+"'";
ResultSet rs_t=UserBean.executeQuery(sql_t);
sql_r="select RNAME from REASON where TNO='"+rno+"'";
ResultSet rs_r=UserBean.executeQuery(sql_r);
sql_s="select SNAME from STATUS where TNO='"+sno+"'";
ResultSet rs_s=UserBean.executeQuery(sql_s);
tname=rs_t.getString("TNAME");
rname=rs_r.getString("RNAME");
sname=rs_s.getString("SNAME");
UserBean.closeStmt();
UserBean.closeConn();
}//the end of if
}//the end of while
UserBean.closeStmt();
UserBean.closeConn();
%>
下面是一个表格,把<%=user_id%>,<%=tname%>,<%=sname%>等等填进去。主要是实现预约实验室的机子的功能,要输入理由,时间段,这个页面是显示预约请求的,就是bookinglist表,我在里面只写了一条记录。各位麻烦帮看看,谢谢啦
work/catalina/localhost/目录下的文件夹里都是.ser文件,打不开啊,各位达人能否说清楚点啊,不好意思,偶刚开始学,还请各位多包涵,说的简单一点,不然看不懂啦。thanks
UserBean.closeConn();
去掉吧
在不同地方加System.out.println("你想打印的!");
org.apache.jsp.booking.bookinglist........
........................
String position=request.getParameter("value_i");
sql_p="select * from BOOKINGLIST where LOCATION_ID='"+position+"'";是不是你的position为null?
<input type="hidden" name="value_i" value="<%=position%>">
想把<input type="submit" name="Submit3" value="3">里面的value值传出去,别人教我这么用的,你看看有问题吗?
String position=request.getParameter("value_i");
System.out.println("position:"+position);
sql_p="select * from BOOKINGLIST where LOCATION_ID='"+position+"'";
UserBean.closeStmt();
UserBean.closeConn();
再说你那个UserBean哪里来的啊
把root cause
贴上来
org.apache.jsp.booking.bookinglist_jsp._jspService(bookinglist_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)
现在是119行,是这一句while(rs_p.next())
现在是119行,是这一句while(rs_p.next())
别是bookinglist.jsp吧
<jsp:useBean id="userBean" scope="page" class="bbs.UserBean" />