我用jsp做一个用户登陆界面,在javabean中用jdbc连接数据库进行验证登陆(登陆到a.jsp),但是登陆不成功;请大家帮我看看代码有什么问题~??
javabean里的代码:package test1;
import java.sql.*;
public class connect {
 private Statement stmt;
 private ResultSet rs;
 
  public ResultSet objconnect(String q) {
   
        try {
            Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
            Connection conn = DriverManager.getConnection("jdbc:odbc:test");
       stmt = conn.createStatement();
       rs = stmt.executeQuery(q);
       
        } catch (Exception e) {
            System.out.print(e);
        }
        return rs;
  }
}jsp代码(index.jsp):
<%@page contentType="text/html; charset=GBK" language="java" %>
<%@page import="java.sql.*" %>
<html>
  <head>
    <title>宠物诊所</title>
  </head>
  <body bgcolor="#ffffff">
<form method="post" action="index.jsp">
<jsp:useBean id="connect" scope="page" class="test1.connect"> </jsp:useBean>
<%! private Statement stmt;%>
<% 
 try{
  String name=request.getParameter("name");
  String password=request.getParameter("password");
  String s="select * from manager";
  connect.objconnect(s);
  ResultSet rs =stmt.executeQuery(s);
  while (rs.next()) {
  if (name.equals(rs.getString(1)) && password.equals(rs.getString(2)))
  {
         response.sendRedirect("a.jsp");
          } else {
            response.sendRedirect("index.jsp");
            
          }
          }
        }catch(Exception ce)
  {
  System.out.print(ce.getMessage());
  }%>
    <h1 align="center">欢迎使用宠物诊所系统</h1>      <table align="center" width="500" border="0">
        <br>
        <br>
        <tr>
          <td>
            <h4>用户名</h4>
          </td>
          <td>
            <input type="text" name="name">
          </td>
        </tr>
        <tr>
          <td>
            <h4>密码</h4>
          </td>
          <td>
            <input type="password" name="password">
          </td>
        </tr>
        <tr>
          <td colspan="2"></td>
        </tr>
        <tr>
          <td>
            <div align="right">
              <input type="submit" name="Submit" value="登陆">
            </div>
          </td>
          <td>
            <input type="reset" value="重置">
          </td>
        </tr>
      </table>
    </form>
  </body>
</html>

解决方案 »

  1.   

    1 把错误贴出来
    2 String   s="select   *   from   manager"; 
    建议修改为
    String   s="select   username,password   from   manager";  // 明确字段3 测试时,用户名和密码不要用中文,全部用字母4 数据连接没有关闭,会很快用光数据库可用连接的
      

  2.   

    2007-12-22 12:22:05 org.apache.catalina.core.StandardContext start
    严重: Error in resourceStart()
    2007-12-22 12:22:05 org.apache.catalina.core.StandardContext start
    严重: Error getConfigured
    2007-12-22 12:22:05 org.apache.catalina.core.StandardContext start
    严重: Context [/ChatModule] startup failed due to previous errors
    2007-12-22 12:22:05 org.apache.catalina.core.StandardContext stop
    信息: Container org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/ChatModule] has not been started
    2007-12-22 12:22:05 org.apache.catalina.core.StandardContext resourcesStart
    严重: Error starting static Resources
    java.lang.IllegalArgumentException: Document base F:\jdxm1\test1\Tomcat\webapps\bookstore does not exist or is not a readable directory
    at org.apache.naming.resources.FileDirContext.setDocBase(FileDirContext.java:140)
    at org.apache.catalina.core.StandardContext.resourcesStart(StandardContext.java:3754)
    at org.apache.catalina.core.StandardContext.start(StandardContext.java:3925)
    at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:759)
    at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:739)
    at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:524)
    at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:589)
    at org.apache.catalina.startup.HostConfig.deployDescriptors(HostConfig.java:536)
    at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:471)
    at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1102)
    at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311)
    at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
    at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1020)
    at org.apache.catalina.core.StandardHost.start(StandardHost.java:718)
    at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1012)
    at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:442)
    at org.apache.catalina.core.StandardService.start(StandardService.java:450)
    at org.apache.catalina.core.StandardServer.start(StandardServer.java:683)
    at org.apache.catalina.startup.Catalina.start(Catalina.java:537)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:585)
    at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:271)
    at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:409)
    2007-12-22 12:22:05 org.apache.catalina.core.StandardContext start
    严重: Error in resourceStart()
    2007-12-22 12:22:05 org.apache.catalina.core.StandardContext start
    严重: Error getConfigured
    2007-12-22 12:22:05 org.apache.catalina.core.StandardContext start
    严重: Context [/bookstore] startup failed due to previous errors
    2007-12-22 12:22:05 org.apache.catalina.core.StandardContext stop
    信息: Container org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/bookstore] has not been started
    2007-12-22 12:22:05 org.apache.coyote.http11.Http11Protocol start
    信息: Starting Coyote HTTP/1.1 on http-8080
    2007-12-22 12:22:05 org.apache.catalina.startup.Catalina start
    信息: Server startup in 2781 ms
    nullnullnullnullnullnullnull
    点了登陆后就就出现null
    登陆框和密码框的内容也清空了
      

  3.   

    我是在jbuider里运行的,需要做哪些配置啊~??我才学的不是很清楚,请大家讲哈~
    以前好像也是这么弄的没配置什么都是好的啊~!·
      

  4.   

    上面的错解决啦,原来是在我的\conf\Catalina\localhost目录下有原来项目的配置文件没有删。
    但是现在有出现另一个错啦
    运行后登陆界面不出来,就出来个
    Help viewer error
    URL: Unable to open location: Document not found on server
    怎么回事啊?下面是信息:"D:\Program Files\jbu\jdk1.5\bin\javaw" -classpath "D:\Program Files\jbu\thirdparty\jakarta-tomcat-5.5.9\bin\bootstrap.jar;D:\Program Files\jbu\jdk1.5\lib\tools.jar"  "-Dcatalina.home=D:/Program Files/jbu/thirdparty/jakarta-tomcat-5.5.9"  org.apache.catalina.startup.Bootstrap -config F:\jdxm1\test1\Tomcat\conf\server8080.xml start 
    2007-12-22 13:47:37 org.apache.coyote.http11.Http11Protocol init
    信息: Initializing Coyote HTTP/1.1 on http-8080
    2007-12-22 13:47:37 org.apache.catalina.startup.Catalina load
    信息: Initialization processed in 1406 ms
    2007-12-22 13:47:37 org.apache.catalina.core.StandardService start
    信息: Starting service Catalina
    2007-12-22 13:47:37 org.apache.catalina.core.StandardEngine start
    信息: Starting Servlet Engine: Apache Tomcat/5.5.9
    2007-12-22 13:47:37 org.apache.catalina.core.StandardHost start
    信息: XML validation disabled
    2007-12-22 13:47:40 org.apache.catalina.core.ApplicationContext log
    信息: Marking servlet debugjsp as unavailable
    2007-12-22 13:47:40 org.apache.catalina.core.StandardContext loadOnStartup
    严重: Servlet /WebModule1 threw load() exception
    java.lang.InstantiationException: javax.servlet.Servlet
    at java.lang.Class.newInstance0(Class.java:335)
    at java.lang.Class.newInstance(Class.java:303)
    at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1048)
    at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:925)
    at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:3857)
    at org.apache.catalina.core.StandardContext.start(StandardContext.java:4118)
    at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1012)
    at org.apache.catalina.core.StandardHost.start(StandardHost.java:718)
    at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1012)
    at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:442)
    at org.apache.catalina.core.StandardService.start(StandardService.java:450)
    at org.apache.catalina.core.StandardServer.start(StandardServer.java:683)
    at org.apache.catalina.startup.Catalina.start(Catalina.java:537)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:585)
    at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:271)
    at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:409)
    2007-12-22 13:47:40 org.apache.catalina.realm.JAASRealm setContainer
    信息: Set JAAS app name Catalina
    2007-12-22 13:47:41 org.apache.coyote.http11.Http11Protocol start
    信息: Starting Coyote HTTP/1.1 on http-8080
    2007-12-22 13:47:41 org.apache.catalina.startup.Catalina start
    信息: Server startup in 3891 ms
    2007-12-22 13:47:41 org.apache.catalina.core.StandardWrapperValve invoke
    信息: Servlet debugjsp is currently unavailable
    2007-12-22 13:47:41 org.apache.catalina.core.StandardWrapperValve invoke
    信息: Servlet debugjsp is currently unavailable
    2007-12-22 13:47:42 org.apache.catalina.core.StandardWrapperValve invoke
    信息: Servlet debugjsp is currently unavailable
    2007-12-22 13:48:10 org.apache.catalina.core.StandardWrapperValve invoke
    信息: Servlet debugjsp is currently unavailable
    2007-12-22 14:10:24 org.apache.catalina.core.StandardWrapperValve invoke
    信息: Servlet debugjsp is currently unavailable