请看http://community.csdn.net/Expert/topic/3091/3091415.xml?temp=1.356143E-02

解决方案 »

  1.   

    谢谢stone_q(qq)!配置成功后马上给分
      

  2.   

    你确定你的数据库名称和用户名密码都正确么?
    我怎么看着就想你从哪边COPY后没有改的呀?
      

  3.   

    http://blog.csdn.net/coolabu/archive/2004/03/22/14630.aspx
      

  4.   

    我配置连接池步骤和测试过程如下,不成功,不知道是哪的错误,请高手指点,谢谢!首先配置conf/server.xml,在<host></host>之间
    增加如下代码,注释掉<Context></Context>,否则Tomcat无法启动
    <!--<Context path="/ch13" docBase="ch13" debug=0 reloadable="true" crossContext="true"> -->
    <Resource name="jdbc/bn" auth="Container" type="javax.sql.DataSource"/>
    <ResourceParams name="jdbc/bn">
    <parameter>
    <name>factory</name>
    <value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
    </parameter>
    <parameter>
    <name>driverClassName</name>
    <value>com.microsoft.jdbc.sqlserver.SQLServerDriver</value>
    </parameter>
    <parameter>
    <name>url</name>
    <value>jdbc:microsoft:sqlserver://127.0.0.1:1433;DatabaseName=jspdev</value>
    </parameter>
    <parameter>
    <name>username</name>
    <value>bn</value>
    </parameter>
    <parameter>
    <name>password</name>
    <value>bn</value>
    </parameter>
    <parameter>
    <name>maxActive</name>
    <value>20</value>
    </parameter>
    <parameter>
    <name>maxIdle</name>
    <value>10</value>
    </parameter>
    <parameter>
    <name>maxWait</name>
    <value>-1</value>
    </parameter>
    </ResourceParams>
    <!--</Context>-->其次在/webapps/ch13中的web.xml中增加如下代码,Tomcat启动没有任何问题
    <resource-ref>
     <description>Datasource example</description>
     <res-ref-name>jdbc/jspdev</res-ref-name>
     <res-type>javax.sql.DataSource</res-type>
     <res-auth>Container</res-auth>
    </resource-ref>
    最后用如下的代码测试,页面显示错误:javax.naming.NameNotFoundException: Name bn is not bound in this Context 
    <!--测试资料源-->
    <%@ page contentType="text/html;charset=gb2312" %>
    <%@ page import="javax.naming.Context" %>
    <%@ page import="javax.sql.DataSource" %>
    <%@ page import="javax.naming.InitialContext" %>
    <%@ page import="java.sql.*" %><%
        DataSource ds=null;
        try 
        {
            Context initCtx = new InitialContext();
            Context envCtx = (Context)initCtx.lookup("java:comp/env");//这一句的作用是什么?这样写对吗?
            //从Context中lookup数据源
            ds = (DataSource)envCtx.lookup("jdbc/bn");
            if (ds != null)
            {
                out.println("已经获得DataSource!");
                out.println("<br>");
                Connection conn = ds.getConnection();
                Statement stmt = conn.createStatement();
                ResultSet rst = stmt.executeQuery("select * from book");
                out.println("以下是从数据库取出的数据");
                while(rst.next())
                {
                    out.println("bookName:"+rst.getString("bookName"));
                    out.println("<br>");
                }
            }
            else
            {
                out.println("连接失败!");
            }
        }
        catch(Exception e)
        {
            out.println(e);
        }
    %>
      

  5.   

    我的SQL Server的用户名和密码都是bn