我现在需要在tomcat下配置一个连接池
1、在%tomcat_home%/conf/server.xml中添加<GlobalNamingResources>
<Resource name="jdbc/messenger" auth="Container"
type="javax.sql.DataSource"/>
<ResourceParams name="jdbc/messenger">
<parameter>
<name>factory</name>
<value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
</parameter>
<parameter>
<name>driverClassName</name>
<value>oracle.jdbc.driver.OracleDriver</value>
</parameter>
<parameter>
<name>url</name>
<value>jdbc:oracle:thin:@192.168.21.167:1521:orcl</value>
</parameter>
<parameter>
<name>username</name>
<value>messenger</value>
</parameter>
<parameter>
<name>password</name>
<value>bdmt</value>
</parameter>
<parameter>
<name>maxActive</name>
<value>100</value>
</parameter>
<parameter>
<name>maxIdle</name>
<value>30</value>
</parameter>
<parameter>
<name>maxWait</name>
<value>10000</value>
</parameter>
</ResourceParams>
</GlobalNamingResources>2、在我的工程的web.xml中添加 <resource-ref>
<description>Oracle DateSource</description>
<res-ref-name>jdbc/messenger</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>3、把Oracle的Driver jar包放到%tomcat_home%/lib下。
4、在Spring 配置文件中添加 <bean id="dataSource"
class="org.springframework.jndi.JndiObjectFactoryBean">
<property name="jndiName" value="java:/comp/env/jdbc/messenger" />
</bean>
然后启动。 可是老是报错:SQL Exception
org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot create JDBC driver of class '' for connect URL 'null'
at org.apache.tomcat.dbcp.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:1150)
at org.apache.tomcat.dbcp.dbcp.BasicDataSource.getConnection(BasicDataSource.java:880)
at org.springframework.orm.hibernate3.LocalDataSourceConnectionProvider.getConnection(LocalDataSourceConnectionProvider.java:81)
at org.hibernate.cfg.SettingsFactory.buildSettings(SettingsFactory.java:84)
.....
请问各位大虾, 这是为什么?
1、在%tomcat_home%/conf/server.xml中添加<GlobalNamingResources>
<Resource name="jdbc/messenger" auth="Container"
type="javax.sql.DataSource"/>
<ResourceParams name="jdbc/messenger">
<parameter>
<name>factory</name>
<value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
</parameter>
<parameter>
<name>driverClassName</name>
<value>oracle.jdbc.driver.OracleDriver</value>
</parameter>
<parameter>
<name>url</name>
<value>jdbc:oracle:thin:@192.168.21.167:1521:orcl</value>
</parameter>
<parameter>
<name>username</name>
<value>messenger</value>
</parameter>
<parameter>
<name>password</name>
<value>bdmt</value>
</parameter>
<parameter>
<name>maxActive</name>
<value>100</value>
</parameter>
<parameter>
<name>maxIdle</name>
<value>30</value>
</parameter>
<parameter>
<name>maxWait</name>
<value>10000</value>
</parameter>
</ResourceParams>
</GlobalNamingResources>2、在我的工程的web.xml中添加 <resource-ref>
<description>Oracle DateSource</description>
<res-ref-name>jdbc/messenger</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>3、把Oracle的Driver jar包放到%tomcat_home%/lib下。
4、在Spring 配置文件中添加 <bean id="dataSource"
class="org.springframework.jndi.JndiObjectFactoryBean">
<property name="jndiName" value="java:/comp/env/jdbc/messenger" />
</bean>
然后启动。 可是老是报错:SQL Exception
org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot create JDBC driver of class '' for connect URL 'null'
at org.apache.tomcat.dbcp.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:1150)
at org.apache.tomcat.dbcp.dbcp.BasicDataSource.getConnection(BasicDataSource.java:880)
at org.springframework.orm.hibernate3.LocalDataSourceConnectionProvider.getConnection(LocalDataSourceConnectionProvider.java:81)
at org.hibernate.cfg.SettingsFactory.buildSettings(SettingsFactory.java:84)
.....
请问各位大虾, 这是为什么?
http://www.java2000.net/p1906
<ResourceLink global="jdbc/mydb" name="jdbc/mydb" type="javax.sql.DataSource"/>
<Resource
name="jdbc/mydb"
type="javax.sql.DataSource"
password="myb"
driverClassName="oracle.jdbc.driver.OracleDriver"
maxIdle="2"
maxWait="5000"
username="myb"
url="jdbc:oracle:thin:@localhost:1521:myb"
maxActive="4"/>