新书推介:《语义网技术体系》
作者:瞿裕忠,胡伟,程龚
   XML论坛     W3CHINA.ORG讨论区     计算机科学论坛     SOAChina论坛     Blog     开放翻译计划     新浪微博  
 
  • 首页
  • 登录
  • 注册
  • 软件下载
  • 资料下载
  • 核心成员
  • 帮助
  •   Add to Google

    >> 本版讨论Java, J2SE, J2ME, J2EE, 以及Eclipse, NetBeans, JBuilder等Java开发环境,还有JSP, JavaServlet, JavaBean, EJB以及struts, hibernate, spring, webwork2, Java 3D, JOGL等相关技术。
    [返回] 中文XML论坛 - 专业的XML技术讨论区计算机技术与应用『 Java/Eclipse 』 → [求助]   关于tomcat的一个问题 查看新帖用户列表

      发表一个新主题  发表一个新投票  回复主题  (订阅本版) 您是本帖的第 4647 个阅读者浏览上一篇主题  刷新本主题   树形显示贴子 浏览下一篇主题
     * 贴子主题: [求助]   关于tomcat的一个问题 举报  打印  推荐  IE收藏夹 
       本主题类别:     
     xuqh00 帅哥哟,离线,有人找我吗?
      
      
      等级:大一新生
      文章:5
      积分:68
      门派:XML.ORG.CN
      注册:2006/12/18

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给xuqh00发送一个短消息 把xuqh00加入好友 查看xuqh00的个人资料 搜索xuqh00在『 Java/Eclipse 』的所有贴子 点击这里发送电邮给xuqh00  引用回复这个贴子 回复这个贴子 查看xuqh00的博客楼主
    发贴心情 [求助]   关于tomcat的一个问题

    help me
    我配置的tomcat在运行一个jsp文件时一直报错.但我不懂怎么排查啊.jsp代码是这样的:

        <%@ page contentType="text/html; charset=GB2312" %>
    <%@ page import="java.sql.*" %>
    <%!
    int PageSize = 3; //设置每张网页显示两笔记录
    int ShowPage = 1; //设置欲显示的页数
    int RowCount = 0; //ResultSet的记录笔数
    int PageCount = 0; //ResultSet分页后的总页数
    Connection con = null;
    Statement stmt = null;
    ResultSet rs = null;
    public void jspInit() //执行数据库与相关数据的初始化
    {
     try{
            //使用JDBC桥创建数据库联接
          Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
            //使用DriverManager类的getConnection()方法建立联接,
          con = DriverManager.getConnection
            ("jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=BookDB" +
           ";User=sa;Password=sa");
      //建立Statement对象, 并设置记录指标类型为可前后移动
      stmt = con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,
            ResultSet.CONCUR_READ_ONLY);
      rs = stmt.executeQuery("SELECT * FROM Book"); //建立ResultSet(结果集)对象,并执行SQL语句
      rs.last(); //将指标移至最后一笔记录
      RowCount = rs.getRow(); //取得ResultSet中记录的笔数
      //计算显示的页数
      PageCount = ((RowCount % PageSize) == 0 ?
        (RowCount/PageSize) : (RowCount/PageSize)+1);
     }
     catch(Exception ex)
     {
      System.out.println(ex.toString());
     }
    }
    public void jspDestroy() //执行关闭各种对象的操作
    {
     try{
      rs.close(); //关闭ResultSet对象
      stmt.close(); //关闭Statement对象
      con.close(); //关闭数据库链接对象
     }
     catch(Exception ex)
     {
      System.out.println(ex.toString());
     }
    }
    %>
    <HTML>
    <HEAD>
    <TITLE>分页显示</TITLE>
    </HEAD>
    <BODY>
    <CENTER>
    <FONT SIZE = 5 COLOR = blue>分页显示</FONT>
    </CENTER>
    <BR>
    <HR>
    <BR>
    <CENTER>
    <%
    String ToPage = request.getParameter("ToPage");
    if(ToPage != null) //判断是否可正确取得ToPage参数
    {
     ShowPage = Integer.parseInt(ToPage);  //取得指定显示的分页页数
     if(ShowPage > PageCount)  //下面的if语句将判断用户输入的页数是否正确
     {
      ShowPage = PageCount;  //判断指定页数是否大于总页数, 是则设置显示最后一页
     }
     else if(ShowPage <= 0)
     {
      ShowPage = 1;  //若指定页数小于0, 则设置显示第一页的记录
     }
    }
    rs.absolute((ShowPage - 1) * PageSize + 1);  //计算欲显示页的第一笔记录位置
    %>
    <H3>当前在第<FONT SIZE = 4 COLOR = red>
    <%= ShowPage %></FONT>页, 共
    <FONT SIZE = 4 COLOR = red>
    <%= PageCount %></FONT>页</H3>
    <BR>
    <%
    //利用For循环配合PageSize属性输出一页中的记录
    for(int i = 1; i <= PageSize; i++)
    {
     %>
     <TABLE border=1 bordercolor=RoyalBlue bgcolor=LightBlue>
      <TR><TD bgcolor=LightYellow width= 100>
      <B>书籍编号</B></TD>
      <TD width= 100><B><%= rs.getString("BookID") %>
      </B></TD>
      <TD bgcolor=LightYellow width= 100>
      <B>出版日期</B></TD>
      <TD width= 100><B><%= rs.getDate("PDate") %>
      </B></TD>
      <TD bgcolor=LightYellow width= 100>
      <B>总页数</B></TD>
      <TD width= 100><B><%= rs.getString("Pages") %>
      </B></TD>
      <TD bgcolor=LightYellow width= 100>
      <B>价  格</B></TD>
      <TD width= 100><B><FONT SIZE = 4 COLOR = red><B>
      <%= rs.getInt("Price") %>
      </B></FONT></TD>
      </TR>
      <TR>
      <TD bgcolor=LightYellow ><B>书籍名称</B></TD>
      <TD Colspan=5 width=500><B><%= rs.getString("Title") %>
      </B></TD>
      </>
      <TD bgcolor=LightYellow ><B>作  者</B></TD><TD width= 100>
      <B><%= rs.getString("Author") %></B></TD>
      </TR>
      <TR><TD bgcolor=LightYellow ><B>备  注</B></TD>
      <TD COLSPAN = 7 width= 700>
      <B><%= rs.getString("BookMemo") %></B></TD>
      </TR>
     </TABLE><BR>
     <%
     //下面的if判断语句用于防止输出最后一页记录时,
     //将记录指标移至最后一笔记录之后
     if(!rs.next())  //判断是否到达最后一笔记录
      break;  //跳出for循环
    }
    %>
    <TABLE>
    <TR valign=baseline align=center>
    <%
    //判断目前所在分页是否为第一页,
    //不是则显示到第一页与上一页的超链接
    if(ShowPage != 1)
    {
    //下面建立的各超链接将链接至自己,
    //并将欲显示的分页以ToPage参数传递给自己
     %>
     <TD Width=150>
     <A Href=pages.jsp?ToPage=<%= 1 %>>到第一页</A>
     </TD>
     <TD Width=150>
     <A Href=pages.jsp?ToPage=<%= ShowPage - 1 %>>到上一页</A>
     </TD>
     <%
    }
    //判断目前所在分页是否为最后一页,
    //不是则显示到最后一页与下一页的超链接
    if(ShowPage != PageCount)
    {
    //下面建立的各超链接将链接至自己,
    //并将欲显示的分页以ToPage参数传递自己
     %>
     <TD Width=150>
     <A Href=pages.jsp?ToPage=<%= ShowPage + 1%>>到下一页</A>
     </TD>
     <TD Width=150>
     <A Href=pages.jsp?ToPage=<%= PageCount %>>到最后一页</A>
     </TD>
     <%
    }
    %>
    <TD Width=150>
    <FORM action=pages.jsp method=POST>

    <INPUT type="text" name=ToPage style="HEIGHT: 25px; WIDTH: 40px"
    value=<%= ShowPage%> > 页
    </FORM></TD></TR>
    </TABLE>
    </CENTER>
    </BODY>
    </HTML>


    出现报告错误是这样的: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
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:372)
    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)
    root cause java.lang.NullPointerException
    org.apache.jsp.pages_jsp._jspService(pages_jsp.java:117)
    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.27 logs.Apache Tomcat/5.0.27


    敬请大方之家指教啊.....(数据库数据已经插入,)


       收藏   分享  
    顶(0)
      




    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2006/12/18 11:57:00
     
     菜籽 帅哥哟,离线,有人找我吗?双鱼座1981-2-28
      
      
      威望:5
      头衔:软件民工
      等级:研二(Sowa的知识表示写得真好!)
      文章:875
      积分:5655
      门派:XML.ORG.CN
      注册:2004/7/25

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给菜籽发送一个短消息 把菜籽加入好友 查看菜籽的个人资料 搜索菜籽在『 Java/Eclipse 』的所有贴子 点击这里发送电邮给菜籽 引用回复这个贴子 回复这个贴子 查看菜籽的博客2
    发贴心情 
    连接数据库的代码最好不要写到jsp中,单独做一个类吧,调试也简单,如果用eclipse,jbuilder可以单步执行,调试

    ----------------------------------------------
    重拾英语...

    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2007/1/18 9:39:00
     
     GoogleAdSense双鱼座1981-2-28
      
      
      等级:大一新生
      文章:1
      积分:50
      门派:无门无派
      院校:未填写
      注册:2007-01-01
    给Google AdSense发送一个短消息 把Google AdSense加入好友 查看Google AdSense的个人资料 搜索Google AdSense在『 Java/Eclipse 』的所有贴子 点击这里发送电邮给Google AdSense 访问Google AdSense的主页 引用回复这个贴子 回复这个贴子 查看Google AdSense的博客广告
    2025/2/2 4:47:39

    本主题贴数2,分页: [1]

    管理选项修改tag | 锁定 | 解锁 | 提升 | 删除 | 移动 | 固顶 | 总固顶 | 奖励 | 惩罚 | 发布公告
    W3C Contributing Supporter! W 3 C h i n a ( since 2003 ) 旗 下 站 点
    苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
    78.125ms