解决方案 »

  1.   

    贴代码,贴tomcat错误日志,贴tomcat配置文件,给大家看看
      

  2.   

    O.O09-May-2014 00:02:15.379 SEVERE [http-apr-8080-exec-9] org.apache.catalina.core.StandardWrapperValve.invoke Servlet.service() for servlet [jsp] in context with path [] threw exception [javax.servlet.ServletException: java.lang.NoClassDefFoundError: book/book] with root cause
     java.lang.ClassNotFoundException: book.book
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1284)
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1132)
    at org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:125)
    at org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:62)
    at org.apache.jsp.页面_jsp._jspService(页面_jsp.java:79)
    at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:725)
    at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:432)
    at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:403)
    at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:347)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:725)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:301)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:219)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:106)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:136)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:74)
    at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:610)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:88)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:516)
    at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1015)
    at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:652)
    at org.apache.coyote.http11.Http11AprProtocol$Http11ConnectionHandler.process(Http11AprProtocol.java:277)
    at org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.doRun(AprEndpoint.java:2451)
    at org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.run(AprEndpoint.java:2440)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
    at java.lang.Thread.run(Thread.java:722)09-May-2014 00:57:45.626 INFO [localhost-startStop-2] org.apache.catalina.core.ApplicationContext.log SessionListener: contextDestroyed()
    09-May-2014 00:57:45.626 INFO [localhost-startStop-2] org.apache.catalina.core.ApplicationContext.log ContextListener: contextDestroyed()
    09-May-2014 08:06:29.564 INFO [localhost-startStop-1] org.apache.catalina.core.ApplicationContext.log ContextListener: contextInitialized()
    09-May-2014 08:06:29.564 INFO [localhost-startStop-1] org.apache.catalina.core.ApplicationContext.log SessionListener: contextInitialized()
    09-May-2014 10:37:48.950 INFO [localhost-startStop-2] org.apache.catalina.core.ApplicationContext.log SessionListener: contextDestroyed()
      

  3.   

    额..你的页面是中文的么,另外.你的book这个类在页面有没有import
      

  4.   

    贴一下这边的代码,这是book.java的
    package chongxieServlet;import java.io.IOException;
    import java.io.PrintWriter;
    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.ResultSet;
    import java.sql.SQLException;
    import java.sql.Statement;
    import javax.servlet.ServletConfig;
    import javax.servlet.ServletException;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;/**
     *
     * @author Administrator
     */
    public class book 
       extends HttpServlet {
        private static final String CONTENT_TYPE = "text/html; charset=GB2312";
        private Connection con;
        private Statement stmt;
        private ResultSet rs;
        
       
        public void init(ServletConfig config) throws ServletException {
            super.init(config);
        }
        public void doPost(HttpServletRequest request, HttpServletResponse response)
                throws ServletException, IOException 
        {
            response.setContentType(CONTENT_TYPE);
            PrintWriter out=response.getWriter();
            
            out.print("<HTML>");
            out.print("<BODY>");
            
            String bookid=request.getParameter("bookid");
            out.println(bookid);
            String bookname=request.getParameter("bookname");
            out.println(bookname);
            String writer=request.getParameter("writer");
            out.println(writer);
            String publish=request.getParameter("publish");
            out.println(publish);
            try{
                Class.forName("sun.jdbc.odbc.JdbcDriver");
            }catch(ClassNotFoundException e){e.printStackTrace();}
            try{
                con=DriverManager.getConnection("jdbc:mysql://localhost:3306/mysql","root","ydx");
                stmt=con.createStatement();
                String sql="Select * from biao where bookid like \"+\"'\"+bookid+\"'";
                rs=stmt.executeQuery(sql);
                out.print("<Table Border>");
                out.print("<TR>");
                out.print("<TH width=100>"+"bookid");
                out.print("<TH width=100>"+"bookname");
                out.print("<TH widtn=50>"+"writer");
                out.print("<TH width=50>"+"publish");
                out.print("</TR>");
                
                while(rs.next())
                {
                    out.print("<TR>");
                    bookid=rs.getString("bookid");
                    out.print("<TD>"+bookid+"</TD>");
                    bookname=rs.getString("bookname");
                    out.print("<TD>"+bookname+"</TD>");
                    writer=rs.getString("writer");
                    out.print("<TD>"+writer+"</TD>");
                    publish=rs.getString("publish");
                    out.print("<TD>"+publish+"</TD>");
                    out.print("</TR>");
                }
                out.print("</Table>");
                con.close();
            }catch(SQLException e)
            {}
            out.println("</BODY>");
            out.println("</HTML>");
        }
        @Override
        public void destroy() {
            
        }}下面是 页面.jsp的<html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=GB2312"><title>T^T </title>
    </head>
    <body>
    <center>
     
    <h2>T^T~5555~</h2><%@ page language="java" import="java.sql.*" %>
     
    <jsp:useBean id="user" scope="page" class="book.book" />
    <% user.init();
    %>
    <br><br>
    <table border="1" align="center">
    <tr><th>Number</th><th>Bookname</th><th>writer</th><th>publisher</th></tr>
     
    <%
    ResultSet RS = user.executeQuery("SELECT * FROM biao");
    while (RS.next()) {
     out.print("<tr>");
       out.print("<td>"+RS.getString("bookid")+"</td>");       
       out.print("<td>"+RS.getString("bookname")+"</td>");   
       out.print("<td>"+RS.getString("writer")+"</td>");    
       out.print("<td>"+RS.getString("publish")+"</td>");   
       out.print("</tr>");
    }  
    RS.close();
    %>
     
    </table>
    <% user.close(); %>
    </center>
    </body>
    </html>
      

  5.   

    同志,在JSP里面写Java代码在企业里是不被允许的哦,考虑JSTL语句吧
      

  6.   

    Connection,Resultset 用完记得调用close()方法 , .的close方法,建议放到  finally 块内执行.  
    还有就是 俺没有从 book.java里看到executeQuery和close()方法, 难道是你从哪里复制的代码.?
      

  7.   

    我说lz绝对牛X,jsp页面直接操作数据库!!!