首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Java Web开发 >

关于TomCat5建立连接Oracle9i的数据库连接池的有关问题,多谢了

2011-11-22 
关于TomCat5建立连接Oracle9i的数据库连接池的问题,谢谢了我想利用TomCat的数据库缓冲池,可是怎么也搞不好

关于TomCat5建立连接Oracle9i的数据库连接池的问题,谢谢了
我想利用TomCat的数据库缓冲池,可是怎么也搞不好,请帮帮我,我使用的环境是Tomcat5.0,用MyEclipse开发的网站。连接的数据库是Oracle9i,我首先将Oracle的jdbc/lib下的所有文件都考到Tomcat的common/lib下
我首先在TomCat   Administration中设置了数据源,生成在Web.xml中的片段为:
<GlobalNamingResources>
......  
<Resource   name= "jdbc/myoracle12 "   type= "javax.sql.DataSource "/>
<ResourceParams   name= "jdbc/myoracle12 ">
            <parameter>
                <name> maxWait </name>
                <value> 5000 </value>
            </parameter>
            <parameter>
                <name> maxActive </name>
                <value> 4 </value>
            </parameter>
            <parameter>
                <name> password </name>
                <value> 123 </value>
            </parameter>
            <parameter>
                <name> url </name>
                <value> jdbc:oracle:thin:@192.168.10.1:mydb </value>
            </parameter>
            <parameter>
                <name> driverClassName </name>
                <value> oracle.jdbc.driver.OracleDriver </value>
            </parameter>
            <parameter>
                <name> maxIdle </name>
                <value> 2 </value>
            </parameter>
            <parameter>
                <name> username </name>
                <value> sa </value>
            </parameter>
        </ResourceParams>
    </GlobalNamingResources>


然后在catalina/localhost下又建立xml文件WebTest.xml,   WebTest为我的网站文件夹名称,内容和上面一样,在外面包了一层:
<Context   path= "/DBTest "   docBase= "DBTest "
                debug= "5 "   reloadable= "true "   crossContext= "true ">
<Resource   name= "jdbc/myoracle12 "   type= "javax.sql.DataSource "/>
        <ResourceParams   name= "jdbc/myoracle12 ">
......
</Context>

最后在我的网站WebTest里面的web.xml中加上:
  <res-ref-name> jdbc/myoracle12 </res-ref-name>
  <res-type> javax.sql.DataSource </res-type>
  <res-auth> Container </res-auth>


</resource-ref>

在Servlet的doGet方法中我写这样的调用代码:
Context   initContext   =   new   InitialContext();
Context   envContext     =   (Context)initContext.lookup( "java:/comp/env ");
DataSource   ds   =   (DataSource)envContext.lookup( "jdbc/myoracle12 ");
Connection   conn   =   ds.getConnection();//运行出错
......

在ds.getConnection()被调用的时候出现异常:
org.apache.commons.dbcp.SQLNestedException:   Cannot   create   JDBC   driver   of   class   ' '   for   connect   URL   'null '

帮我看看,谢了!~


[解决办法]
<parameter>
<name> url </name>
<value> jdbc:oracle:thin:@192.168.10.1:1521:mydb </value>
</parameter>

改成上面的试一下
[解决办法]
加上这句,还有url要有端口。
<parameter>
<name> factory </name>
<value> org.apache.commons.dbcp.BasicDataSourceFactory </value>
</parameter>
[解决办法]
与我站内联系

热点排行