我是菜鸟,
代码如下,所有的配置都配置好了,检查了不止一边,但在tomcat6.0下,jdk1.6_6
出现错误 500-
这段程序其实很简单,就是简单的实现jsp对access中的数据的添加,删除,查询功能,高人请指点啊!兄弟感激不尽~~其中access 如下name age
张三 12
李四 15
王五 16<%@ page contentType="text/html;charset=GB2312" %>
<%@ page import="java.sql.*"%>
<html>
<head><title>This is a jsp test!</title></head>
<body><FONT Size=3>
input your action:i(insert)是插入,d(delete)是删除,q是查询
<FORM action="test.jsp" method=post name=form>
<INPUT type="text" name="operate">
<INPUT TYPE="submit" value="确定" name=submit>
</FORM>
<%!
Connection con;
Statement stmt;
ResultSet rs;
string op=null;
%>
<%
op=request.getParameter("operate");
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
con=DriverManager.getConnection("jdbc:odbc:testaccess","","");


if(op==i){
stmt=con.createStatement();
rs=stmt.executeUpdate("INSERT INTO test VALUES('王麻子',11)");
}
else if(op==d){
stmt=con.createStatement();
rs=stmt.executeUpdate("DELETE FORM test WHERE name='王麻子'");
}
else if(op==q){
stmt=con.createStatement();
rs=stmt.executeQuery("SELECT * FORM test");
while(rs.next()){
%>
<%= rs.getString("name");%>
<%
}
}
if(rs != NULL) rs.close();
if(stmt != NULL) stmt.close();
if(con != NULL) con.close(); 
%>

</body>
</html>

解决方案 »

  1.   

    1:首先很明显的错误,你的代码中类似 op==i 这样的判断是不正确的,就算像你这样写死的话也至少要写成 "i".equals(op) 这样吧!
    2:另外你要弄清楚在<%!  %>里边声明的变量   和   在<%  %>里边声明的变量之间的区别!
    3:另外你的JDBC代码格式很不规范 try{
       //your code
    } catch(SQLException e) {} finally {
       //close the opend resource
    }
    4:请确定connection确实拿到了,检查Class.forName("sun.jdbc.odbc.JdbcOdbcDriver")数据库连接串是否正确
    5:从上到下仔细的看一下,程序执行的每一步是不是你预期的!
                                                       祝好运~
      

  2.   

    另外以后提问请将error message附上!呵呵~
      

  3.   

    type Exception report
    message 
    description The server encountered an internal error () that prevented it from fulfilling this request.
    exception 
    org.apache.jasper.JasperException: org.apache.jasper.JasperException: Unable to load class for JSP
    org.apache.jasper.servlet.JspServletWrapper.getServlet(JspServletWrapper.java:156)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:329)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:342)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:267)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    root cause 
    org.apache.jasper.JasperException: Unable to load class for JSP
    org.apache.jasper.JspCompilationContext.load(JspCompilationContext.java:620)
    org.apache.jasper.servlet.JspServletWrapper.getServlet(JspServletWrapper.java:144)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:329)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:342)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:267)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    root cause 
    java.lang.ClassNotFoundException: org.apache.jsp.test_jsp
    java.net.URLClassLoader$1.run(Unknown Source)
    java.security.AccessController.doPrivileged(Native Method)
    java.net.URLClassLoader.findClass(Unknown Source)
    org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:134)
    org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:66)
    org.apache.jasper.JspCompilationContext.load(JspCompilationContext.java:618)
    org.apache.jasper.servlet.JspServletWrapper.getServlet(JspServletWrapper.java:144)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:329)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:342)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:267)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    note The full stack trace of the root cause is available in the Apache Tomcat/6.0.18 logs.
      

  4.   

    java.lang.ClassNotFoundException: org.apache.jsp.test_jsp 
    没有找到类