国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
當Tomcat遭遇JBDC Driver,出現(xiàn) ‘Cannot create resource instance‘ !
用Tomcat,最擔心的就是配置JNDI的DataSource的時候出現(xiàn)問題,隨著各大廠商發(fā)布自己的JDBC的實現(xiàn),兼容性的問題也就越來也突出了...
一般我們都是用Tomcat自帶的DBCP來處理,配置如下:
<Resource name="jdbc/MyDS" auth="Container" type="javax.sql.DataSource" />
<ResourceParams name="jdbc/MyDS">
<parameter>
<name>driverClassName</name>
<value>oracle.jdbc.driver.OracleDriver</value>
</parameter>
<parameter>
<name>driverName</name>
<value>jdbc:oracle:thin:@server:port:sid</value>
</parameter>
<parameter>
<name>user</name>
<value>########</value>
</parameter>
<parameter>
<name>password</name>
<value>########</value>
</parameter>
</ResourceParams>
Oracle JDBC Driver for JDK 1.4 or JDK 1.5
http://www.oracle.com/technology/software/tech/java/sqlj_jdbc/htdocs/jdbc_10201.html
不過這個寫法,如果在JBuilderX中,跑Tomcat 4.1,加上最新版的 Oracle JDBC Driver會存在問題,系統(tǒng)拋出的錯誤為:
javax.naming.NamingException: Cannot create resource instance
at org.apache.naming.factory.ResourceFactory.getObjectInstance(ResourceFactory.java:189)
at javax.naming.spi.NamingManager.getObjectInstance(NamingManager.java:301)
at org.apache.naming.NamingContext.lookup(NamingContext.java:834)
at org.apache.naming.NamingContext.lookup(NamingContext.java:181)
at org.apache.naming.NamingContext.lookup(NamingContext.java:822)
at org.apache.naming.NamingContext.lookup(NamingContext.java:181)
at org.apache.naming.NamingContext.lookup(NamingContext.java:822)
at org.apache.naming.NamingContext.lookup(NamingContext.java:181)
at org.apache.naming.NamingContext.lookup(NamingContext.java:822)
at org.apache.naming.NamingContext.lookup(NamingContext.java:194)
at org.apache.naming.SelectorContext.lookup(SelectorContext.java:183)
at javax.naming.InitialContext.lookup(InitialContext.java:347)
看來DBCP針對java.sql.DataSource相關的實現(xiàn)與ojdbc14.jar存在兼容性的問題,需要按照下面的寫法才能OK:
<Resource name="jdbc/MyDS" type="oracle.jdbc.pool.OracleConnectionCacheImpl"/>
<ResourceParams name="jdbc/MyDS">
<parameter>
<name>factory</name>
<value>oracle.jdbc.pool.OracleDataSourceFactory</value>
</parameter>
<parameter>
<name>driverClassName</name>
<value>oracle.jdbc.driver.OracleDriver</value>
</parameter>
<parameter>
<name>url</name>
<value>jdbc:oracle:thin:@server:port:sid</value>
</parameter>
<parameter>
<name>user</name>
<value>########</value>
</parameter>
<parameter>
<name>password</name>
<value>########</value>
</parameter>
</ResourceParams>
原來Oracle自己實現(xiàn)了DataSource的工廠類來管理DataSource的建立!
同樣發(fā)現(xiàn)微軟的SQL Server 2000 Driver for JDBC Service Pack 3也存在這個問題!
http://www.microsoft.com/downloads/details.aspx?familyid=07287b11-0502-461a-b138-2aa54bfdc03a&displaylang=en
需要如下配置:
<Resource name="jdbc/MyDS" auth="Container" type="com.microsoft.jdbcx.sqlserver.SQLServerDataSource"/>
<ResourceParams name="jdbc/MyDS">
<parameter>
<name>factory</name>
<value>com.microsoft.jdbcx.sqlserver.SQLServerDataSourceFactory</value>
</parameter>
<parameter>
<name>driverClassName</name>
<value>com.microsoft.jdbcx.sqlserver.SQLServerDataSource</value>
</parameter>
<parameter>
<name>driverName</name>
<value>SQLServer</value>
</parameter>
<parameter>
<name>description</name>
<value>My DataSource</value>
</parameter>
<parameter>
<name>serverName</name>
<value>########</value>
</parameter>
<parameter>
<name>portNumber</name>
<value>1433</value>
</parameter>
<parameter>
<name>selectMethod</name>
<value>cursor</value>
</parameter>
<parameter>
<name>databaseName</name>
<value>########</value>
</parameter>
<parameter>
<name>user</name>
<value>########</value>
</parameter>
<parameter>
<name>password</name>
<value>########</value>
</parameter>
<parameter>
<name>loginTimeout</name>
<value>3000</value>
</parameter>
</ResourceParams>
本站僅提供存儲服務,所有內容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權內容,請點擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
深入Tomcat:JNDI在TOMCAT中的應用
《Tomcat4.1.31的數(shù)據(jù)庫連接池配置》
Tomcat 5.0.XX與6.0xx 配置連接池
XX報名程序優(yōu)化總結
配置Spring數(shù)據(jù)源c3p0與dbcp
activemq的消息存儲機制 - 幸福的懦夫 - JavaEye技術網站
更多類似文章 >>
生活服務
分享 收藏 導長圖 關注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服