tomcat5.5配置连接池:jdbc3个驱动包已经拷贝到了F:\jdk1.5.0_02\jre\lib\ext和F:\tomcat5.5
\common\lib下面:
在tomcat中F:\tomcat5.5\conf\server.xml代码如下:
.........
        <Context path="/iosystem" docBase="F:\tomcat5.5
\webapps\iosystem" 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=iosystem<
/value>
   </parameter>
                       <parameter>
      <name>username</name>
  <value>sa</value>
   </parameter>
                       <parameter>
      <name>password</name>
  <value></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>
      </Host>
    </Engine>
  </Service>
</Server>
不知道是不是server.xml配置有问题,因为我用
以下方法连接是成功的。
Connection conn = null;
    String url ="jdbc:microsoft:sqlserver://127.0.0.1:1433;DatabaseName=iosystem";
    
    String user = "sa";
    String password = "";
     int count=0;
    try {
      Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance();
      conn = DriverManager.getConnection(url, user, password);
      Statement stmt=conn.createStatement();
      ResultSet rs=stmt.executeQuery("select * from users");恳请高手帮忙改正,最好能贴出正确的server.xml的全部代码。再次感谢!!!
tomcat报错如下:
org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot create JDBC driver of cla
ss '' for connect URL 'null'

解决方案 »

  1.   

    web.xml中配置了
    resource-ref>
         <res-ref-name>jdbc/bn</res-ref-name>
         <res-type>javax.sql.DataSource</res-type>
         <res-auth>Container</res-auth>
       </resource-ref>在程序中加上Context ctx = new InitialContext();
             DataSource ds = (DataSource) ctx.lookup("java:comp/env/jdbc/bn");
             Connection cn = ds.getConnection();
      

  2.   

    5.5.17版有个context.xml文件
    在这个文件里可以进行如下配置<!-- The contents of this file will be loaded for each web application -->
    <Context>    <!-- Default set of monitored resources -->
        <WatchedResource>WEB-INF/web.xml</WatchedResource>

        <!-- Uncomment this to disable session persistence across Tomcat restarts -->
        <!--
        <Manager pathname="" />
        -->
    <!-- 数据源 -->
        <Resource
          name="jdbc/test"
          type="javax.sql.DataSource"
          password=""
          driverClassName="com.mysql.jdbc.Driver"
          maxIdle="2"
          maxWait="5000"
          username="root"
          url="jdbc:mysql://localhost:3306/test?autoReconnect=true"
          maxActive="4"/></Context>还可以在conf\Catalina\localhost下建立一个XML文件。Tomcat会在启动的时候加载这个目录下的所有XML文件
    比如有一个BookShop的工程新建BookShop.xml内容如下
    <?xml version="1.0" encoding="UTF-8"?>
    <Context
        docBase="D:\tomcat-5.5.17\webapps\BookShop"
        privileged="true">
      <Resource
        auth="Container"
        name="jdbc/tiwen"
        type="javax.sql.DataSource"
        password=""
        driverClassName="com.microsoft.jdbc.sqlserver.SQLServerDriver"
        maxIdle="10"
        maxWait="100000"
        username="sa"
        url="jdbc:microsoft:sqlserver://localhost:1433;databasename=BookShop"
        maxActive="20"/>
    </Context>这样两种都可以。。试试吧
      

  3.   

    谢谢大家,问题已经解决了
    特别要谢谢楼上的,<Context>...</Context>直接的参数不能按我那样写
      

  4.   

    tomcat5.0和5.5的配置方法不一样,具体差别在楼上已经写出了