精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2006-12-23
******************************** <Resource name="jdbc/hbweb" auth="Container" type="javax.sql.DataSource" maxActive="100" maxIdle="20" maxWait="10000" username="sa" password=" " driverClassName="com.microsoft.jdbc.sqlserver.SQLServerDriver" url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=web"/> ****************************** 放在tomcat下的server.xml 中的<GlobalNamingResources> </GlobalNamingResources> 之间呢? 其它地方还用改动嘛?我怎么不行. 另外如果我有两个工程.同时我也需要有两个连接池,可以实现任一个系统可以使用任一个连接池,如何做呢? 两个系统要公用一个连接池的时候.tomcat下的server.xml 中的 <Context></Context> 之间的 那段(如上)就不需要了.只用放在<GlobalNamingResources> </GlobalNamingResources>之间嘛? 请指教. 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2006-12-23
放在GlobalNamingResources标签里面是可以的。你注意看一下tomcat的log里面的信息。我猜测也许是因为你没有把相应的driver的jar包放在common\lib目录下导致出错。
|
|
返回顶楼 | |
发表时间:2006-12-23
我的是这样的.
<GlobalNamingResources> <Environment value="30" type="java.lang.Integer" name="simpleValue"/> <Resource type="org.apache.catalina.UserDatabase" description="User database that can be updated and saved" auth="Container" name="UserDatabase" pathname="conf/tomcat-users.xml" factory="org.apache.catalina.users.MemoryUserDatabaseFactory"/> <Resource name="jdbc/hbweb" auth="Container" type="javax.sql.DataSource" maxActive="100" maxIdle="20" maxWait="10000" username="sa" password="567" driverClassName="com.microsoft.jdbc.sqlserver.SQLServerDriver" url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=hbweb"/> </GlobalNamingResources> 在Tomcat\common\lib 下有msbase.jar等三个数据库驱动jar包.现在是我把这段配置放在 global里,就不认:报错Cannot create JDBC driver of class '' for connect URL 'null' 我也觉得应该是驱动的问题.可是我已经复制了有啊.而且系统环境变量: %TOMCAT_HOME%\common\lib\mssqlserver.jar; 有这样的三个配置.实在不明白. 各位给点建议好不? |
|
返回顶楼 | |
发表时间:2006-12-23
url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=hbweb
这一句和上面一样.整个resource是一样的.只是帖子上不一样.嘿嘿.小改了一下. |
|
返回顶楼 | |
发表时间:2006-12-24
放在global里面是可以的,但是每个Context要加个Resource Link,可以到这里来看看:
http://tomcat.apache.org/tomcat-5.5-doc/config/context.html#Resource%20Links |
|
返回顶楼 | |
发表时间:2006-12-24
<ResourceLink name="jdbc/cqweb"
global="jdbc/cqweb" type="javax.sql.DataSource" /> 这个global的属性到底什么意思呢. 就是在全局使用时要使用的名字嘛?相当与name的一个别名?是否是这样写的? 将resource那一段放在globalresource里.然后 <Context docBase="D:\web\cq" reloadable="true" workDir="D:\web\cq\work" debug="1" path="/cq" crossContext="true" useNaming="true"> <ResourceLink name="jdbc/cqweb" global="jdbc/cqweb" type="javax.sql.DataSource" /> </Context> |
|
返回顶楼 | |
发表时间:2006-12-24
现在竟然报错:
Cannot load JDBC driver class 'com.microsoft.jdbc.sqlserver.SQLServerDriver' 可是我的tomcat/common/lib 下面有那三个包啊.本来单个还可以用的连接池.现在完全不能用了.郁闷. |
|
返回顶楼 | |
发表时间:2006-12-24
不是那样写的。我弄了一个小例子,希望对你有帮助。
在server.xml文件中: <GlobalNamingResources> ...... <Resource name="jdbc/GLOBAL_DEMO" auth="Container" type="javax.sql.DataSource" maxActive="20" maxIdle="0" maxWait="100000" username="admin" password="" driverClassName="sun.jdbc.odbc.JdbcOdbcDriver" url="jdbc:odbc:driver={Microsoft Access Driver (*.mdb)};DBQ=c:\\jbproject\\flive_demo\\demo.mdb" /> </GlobalNamingResources> 在项目的context文件中(一般在${tomcat_home}/conf/catalina/localhost/目录下面): <Context path="..." reloadable="..." docBase="..." workDir="..." > <ResourceLink name="jdbc/FLIVE_DEMO" global="jdbc/GLOBAL_DEMO" type="javax.sql.DataSource" /> </Context> 在项目的web.xml文件中: ...... <resource-ref> <res-ref-name>jdbc/FLIVE_DEMO</res-ref-name> <res-type>javax.sql.DataSource</res-type> <res-auth>Container</res-auth> </resource-ref> ...... |
|
返回顶楼 | |
发表时间:2006-12-24
谢谢楼上,有个问题,那个
在项目的context文件中(一般在${tomcat_home}/conf/catalina/localhost/目录下面) 是不是要是一个和工程同名的一个xml文件 比如我的工程叫appkk ,这个文件就应该叫做appkk.xml 是不是有这样的规定呢. |
|
返回顶楼 | |
发表时间:2006-12-24
我如果在工程中使用这个连接,实际上还是找得<res-ref-name>jdbc/FLIVE_DEMO</res-ref-name> 这个名字了?
|
|
返回顶楼 | |