页面显示错误提示是:
org.apache.jasper.JasperException
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:254)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:295)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:256)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2415)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:171)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:172)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
at org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:223)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:594)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:392)
at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:565)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:619)
at java.lang.Thread.run(Thread.java:536)
root cause java.lang.NullPointerException
at org.apache.jsp.postForm_jsp._jspService(postForm_jsp.java:138)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:137)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:210)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:295)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:256)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2415)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:171)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:172)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
at org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:223)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:594)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:392)
at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:565)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:619)
at java.lang.Thread.run(Thread.java:536)

解决方案 »

  1.   

    用out.close();终止程序的运行,用out.print();输出变量值,一步一步走,看看到底是哪个位置出的错,不要着急,慢慢来.......
      

  2.   

    到你的tomcat的work目录下去找postForm_jsp.java文件的138行,抛出了一个java.lang.NullPointerException异常。估计是类似if(!RepID.equals("0"))这种语句引起的,因为没有取到值,所以变量是空的,不可以调用equals等方法。解决办法:仔细检查程序,在所有的String对象使用之前都判断一下是否为null,不为null才允许执行equal等方法。
      

  3.   

    action="<%="post.jsp?RepID=" + RepID%>"先用<% String strAction="post.jsp?RepID=" + RepID ;%>
    然后action=<%=strAction%>试试,不要加".
      

  4.   

    加行out.println("<%="post.jsp?RepID=" + RepID%>");看看得出什么字符串吧.
      

  5.   

    同意mingjob(小一号),应该是被调用的对象没被初始化
    比如if(!RepID.equals("0")),当RepID没被赋值时,就会抛出空对象异常(java.lang.NullPointerException)
      

  6.   

    你可以看看你所使用的对象是否为null,比如数据库对象.
      

  7.   

    你可以看看你所使用的对象是否为null,比如数据库对象.
      

  8.   

    String RepID=new String(request.getParameter("RepID"));
    看的书名?好奇怪...
      

  9.   

    我还太差不明白什么对象初始化巴西的,我只知道我的代码是照书敲的,<jsp动态网页入门实物>,昨天也是遇到了不行的问题,后来问csdn上的人,他们提醒我ACCESS数据库上的字段的"长整型"变"整型"就成了.
    奇怪的东西阿谢谢诸位了
      

  10.   

    字段ID张贴文章的编号
    Poster张贴者
    PostTime张贴时间
    Content文章内容
    RepID相应的主题编号
    LastRep最近一次相应此主题的时间
    RepNum相应此主题的文章数目
    ConNum浏览此主题的人数
    以上是我的所有字段诸位的,我已经无法用给分来报答了...
      

  11.   

    if(!RepID.equals("0"))
    {
    strSQL="SELECT Content FROM Board WHERE ID=" +PostID;
    rs=stmt.executeQuery(strSQL);
    rs.next();
    out.println(ShowContent(rs.getString("Content")));
    }
    else
    {
    strSQL="SELECT ID FROM Board" + " WHERE RepID=0 ORDER BY LastRep DESC";
    rs=stmt.executeQuery(strSQL);
    rs.next();
    RepID=rs.getString("ID");
    }难道是我的SQL语句有问题?
      

  12.   

    我明白了: strSQL="SELECT Content FROM Board WHERE ID='" +PostID+"'";
      

  13.   

    好像还是漏了一个引号吧 :)
    strSQL="SELECT Content FROM Board WHERE ID="'" +PostID+"'";
      

  14.   

    你那样写在编译时应该会报错的呀,怎么搞的?strSQL="SELECT ID FROM Board" + " WHERE RepID=0 ORDER BY LastRep DESC";RepID和LastRep如果是你自己定义的变量的话,那么:strSQL="SELECT ID FROM Board" + " WHERE '"+RepID+"'=0 ORDER BY '"+LastRep+"' DESC";
      

  15.   

    out.println(strSQL)一下不就知道了么。
      

  16.   

    strSQL="SELECT ID FROM Board  WHERE '"+RepID+"'=0 ORDER BY '"+LastRep+"' DESC";注意保持空格
      

  17.   

    刚摸JSP两个星期,现在给我个考勤系统任务,一个月完成,自己一个人设计系统和数据库并编码测试...爽吧...
      

  18.   

    第一。有没有配好JAVA_HOME?
    我觉得mingjob(小一号) 有点道理,要自已试一下才知道
      

  19.   

    还是以前的问题阿,他们说的检查方法我也不会,我照你的方法改了SQL也是不行,总是不行..
      

  20.   

    数据库启动?我用的access数据库
    其中我做了一个叫"Class.mdb"的access的数据库,其中包含一个表叫"Board",然后我再"数据源"中选择"系统DNS"-"添加"-Microsoft access Driver-数据源名"ClassDB"-数据库路径"D:\test\讨论区\Class.mdb"-确定
      

  21.   

    你再好好查一遍,看看哪里的string变量没初始化。
      

  22.   

    int totallen=strCon.length();
    不应该这样写,
    int totallen=new int(strCon.length());
      

  23.   

    我把上边那句改了,报了新的错, 这句好像不应该这样改
    [javac] Since fork is true, ignoring compiler setting.
        [javac] Compiling 1 source file
        [javac] Since fork is true, ignoring compiler setting.
        [javac] C:\Program Files\Apache Group\Tomcat 4.1\work\Standalone\localhost\_\讨论区\postForm_jsp.java:47: '[' expected
        [javac]  int totallen=new int(strCon.length());
        [javac]                             ^
        [javac] C:\Program Files\Apache Group\Tomcat 4.1\work\Standalone\localhost\_\讨论区\postForm_jsp.java:47: illegal start of expression
        [javac]  int totallen=new int(strCon.length());
        [javac]                                              ^
        [javac] C:\Program Files\Apache Group\Tomcat 4.1\work\Standalone\localhost\_\讨论区\postForm_jsp.java:47: incompatible types
        [javac] found   : int[]
        [javac] required: int
        [javac]  int totallen=new int(strCon.length());
        [javac]                      ^
        [javac] 3 errors
      

  24.   

    我觉着我的代码真的好像没什么问题,是不是数据库中某个字段的属性给设置错了哪,比如什么数据库的对象是否为空.
    字段ID张贴文章的编号
    Poster张贴者
    PostTime张贴时间
    Content文章内容
    RepID相应的主题编号 //要响应主题的编号,即为该主题第一篇文章的记录编号(id栏的值)
    LastRep最近一次相应此主题的时间
    RepNum相应此主题的文章数目
    ConNum浏览此主题的人数
    以上是我的所有字段
      

  25.   

    postForm.jsp单独打开的时候是显示的以上错误,后来他作为一个框架中的页时候,打开时候显示的错误:
    org.apache.jasper.JasperException: [Microsoft][ODBC 驱动程序 管理器] 无效的光标状态
    at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:254)
    at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:295)
    at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:256)
    at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
    at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
    at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
    at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
    at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
    at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
    at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2415)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180)
    at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
    at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:171)
    at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:172)
    at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
    at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
    at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174)
    at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
    at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
    at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
    at org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:223)
    at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:594)
    at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:392)
    at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:565)
    at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:619)
    at java.lang.Thread.run(Thread.java:536)