先简单介绍一下情况:数据库:采用SQL Server 2000数据库(没有设密码)
DNS:名称为Sceninte
数据库文件位置:
\mingrisoft\Sceninte\DataBase\db_Sceninte_Data.MDF和
\mingrisoft\Sceninte\DataBase\db_Sceninte_Log.LDF
后台管理员入口:
用户名:admin;密码:admin;单击“进入”按钮,将进入后台管理页面

把数据添加进SQL SQL Server和配置ODBC数据源,这两个步骤顺利完成
可是登陆的时候发生下面两个错误: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.handleJspException(JspServletWrapper.java:510)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:393)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
root cause java.lang.NullPointerException
org.apache.jsp.Scenince.user.check_jsp._jspService(org.apache.jsp.Scenince.user.check_jsp:66)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:332)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
note The full stack trace of the root cause is available in the Apache Tomcat/5.5.15 logs.
--------------------------------------------------------------------------------Apache Tomcat/5.5.15
(二)tomcat 服务器中提示错误信息:ODBC驱动程序管理器:未发现数据源名称并且未指定默认驱动程序
请大家帮忙分析是什么原因?

解决方案 »

  1.   

    jdbc 连接代码是怎么样的
    你建数据源的时候有没有测试连接
    在sqlserver企业管理理器里建一个登陆名
    服务器角色第一个打勾就是设置为DBO
      

  2.   

    JAVA不能直接调用ODBC,需要有个从JDBC到ODBC的驱动,你到网上找找,应该很多的
      

  3.   

    那我试试从JDBC到ODBC的驱动看看
      

  4.   

    这个问题,我问了一下jsp群里的人,别人的分析是:
           你的问题的原因可能有几个:1、数据源创建的时候,数据库连接的用户名和密码与sql server  实际的管理员用户名密码不一致。你可以在sql server中设置sa的密码,然后在数据源的属性中改为用sa登陆,同时密码与之对应。2、在你的jsp网页的设置文件中是否有对数据源连接进行说明,同时连接的用户名、密码是否与数据源的设置中sa及其密码对应。请检查这两个主要问题,如果无误,则有可能是因为你的sql server没有打sp的原因,你试试给系统查毒,并给sql server打上sp试试。我的SQL Server没有设置sa密码,别外我打上sp4的补丁也没有解决
      

  5.   

    package com.bwm.db;import java.sql.*;/**
     *class explain:Database connection
     *set up name: crazyadept
     *set up time: 11/22/2004
     */
    public class Conn {
        private static Connection con;
        private Statement stmt;
        private ResultSet rs;
        private static final String drivername =
            "com.microsoft.jdbc.sqlserver.SQLServerDriver";
        private static final String url = "jdbc:microsoft:sqlserver://66C5B357142E419:1433;DatabaseName=db_Scenince;user=sa;password=;";    /**
         *method explain:   Get Connection DataBase
         *modify time: 12/20/2004
         */
        public static synchronized Connection getCon() throws Exception {
            try {
                Class.forName(drivername);
                con = DriverManager.getConnection(url);
                return con;
            } catch (SQLException e) {
                System.err.println(e.getMessage());
                throw e;
            }
        }    /**
         *output parameter: in order select in SQL
         *modify time: 12/20/2004
         */
        public Statement getStmtread() {
            try {
                con = getCon();
                stmt = con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,
                                           ResultSet.CONCUR_READ_ONLY);
                return stmt;
            } catch (Exception e) {
                System.err.println(e.getMessage());
                e.printStackTrace();
            }
            return null;
        }    /**
         *output parameter: Data
         *input parameter:  SQL select sentence
         *modify time:      11/29/2004
         */
        public ResultSet getRs(String sql) {
            try {
                stmt = getStmtread();
                rs = stmt.executeQuery(sql);
                return rs;
            } catch (Exception e) {
                System.err.println(e.getMessage());
                e.printStackTrace();
            }
            return null;
        }    /**
         *output parameter: not in order select in str SQL
         *modify time:      11/29/2004
         */
        public Statement getStmt() {
            try {
                con = getCon();
                stmt = con.createStatement();
                return stmt;
            } catch (Exception e) {
                System.err.println(e.getMessage());
                e.printStackTrace();
            }
            return null;
        }    /**
         *method explain:   Close DataBase Connection
         *modify time:      11/29/2004
         */
        public synchronized void close() {
            try {
                if (rs != null) {
                    rs.close();
                    rs = null;
                }
            } catch (Exception e) {
                System.err.println(e.getMessage());
                e.printStackTrace();
            }
            try {
                if (stmt != null) {
                    stmt.close();
                    stmt = null;
                }
            } catch (Exception e) {
                System.err.println(e.getMessage());
                e.printStackTrace();
            }
            try {
                if (con != null) {
                    con.close();
                    con = null;
                }
            } catch (Exception e) {
                System.err.println(e.getMessage());
                e.printStackTrace();
            }
        }
    }