Tomcat数据源配置问题

黑土墨 2008-03-16 08:46:07
我在配置Tomcat数据源是,在server.xml文件中添加
<Context path="/sqlserver" docBase="sqlserver"
debug="5" reloadable="true" crossContext="true">

<!-- maxActive: Maximum number of dB connections in pool. Make sure you
configure your mysqld max_connections large enough to handle
all of your db connections. Set to 0 for no limit.
-->

<!-- maxIdle: Maximum number of idle dB connections to retain in pool.
Set to -1 for no limit. See also the DBCP documentation on this
and the minEvictableIdleTimeMillis configuration parameter.
-->

<!-- maxWait: Maximum time to wait for a dB connection to become available
in ms, in this example 10 seconds. An Exception is thrown if
this timeout is exceeded. Set to -1 to wait indefinitely.
-->

<!-- username and password: MySQL dB username and password for dB connections -->

<!-- driverClassName: Class name for the old mm.mysql JDBC driver is
org.gjt.mm.mysql.Driver - we recommend using Connector/J though.
Class name for the official MySQL Connector/J driver is com.mysql.jdbc.Driver.
-->

<!-- url: The JDBC connection url for connecting to your MySQL dB.
The autoReconnect=true argument to the url makes sure that the
mm.mysql JDBC Driver will automatically reconnect if mysqld closed the
connection. mysqld by default closes idle connections after 8 hours.
-->

<Resource name="jdbc/a" auth="Container" type="javax.sql.DataSource"
maxActive="100" maxIdle="30" maxWait="10000"
username="sa" password="123456" driverClassName="com.microsoft.jdbc.sqlserver.SQLServerDriver"
url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=university"/>

</Context>
时运行结果是正确的。
但是改为添加
<Context path="/sqlserver" docBase="sqlserver"
debug="5" reloadable="true" crossContext="true">

<Logger className="org.apache.catalina.logger.FileLogger"
prefix="localhost_MysqlTest_log." suffix=".txt"
timestamp="true"/>

<Resource name="jdbc/a" auth="Container" type="javax.sql.DataSource"/>

<ResourceParams name="jdbc/a">
<parameter>
<name>factory</name>
<value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
</parameter>
<parameter>
<name>maxActive</name>
<value>100</value>
</parameter>
<parameter>
<name>maxIdle</name>
<value>30</value>
</parameter>
<parameter>
<name>maxWait</name>
<value>5000</value>
</parameter>
<parameter>
<name>username</name>
<value>sa</value>
</parameter>
<parameter>
<name>password</name>
<value>123456</value>
</parameter>
<parameter>
<name>driverClassName</name>
<value>com.microsoft.jdbc.sqlserver.SQLServerDriver</value>
</parameter>
<parameter>
<name>url</name>
<value>jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=university</value>
</parameter>
</ResourceParams>
</Context>
却输出:
已经获得DataSource!
org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot create JDBC driver of class '' for connect URL 'null'

为什么会出现这样的问题???
...全文
69 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
黑土墨 2008-03-16
  • 打赏
  • 举报
回复
能具体说一下有什么不同吗?
bootupnow 2008-03-16
  • 打赏
  • 举报
回复
楼主注意,tomcat5 和 tomcat5.5及其以上 配置数据源的方式是不同的!
ps:宣传 http://www.java2000.net/viewthread.jsp?tid=1207
黑土墨 2008-03-16
  • 打赏
  • 举报
回复
谢谢,我知道了。
bootupnow 2008-03-16
  • 打赏
  • 举报
回复
可以看看官方的文档:
http://tomcat.apache.org/tomcat-5.5-doc/jndi-resources-howto.html
&&
http://tomcat.apache.org/tomcat-4.1-doc/config/context.html#Resource%20Parameters
http://tomcat.apache.org/tomcat-4.1-doc/jndi-datasource-examples-howto.html

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧