自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

JBoss JDBC驅(qū)動(dòng)報(bào)錯(cuò)問題分析與解決

開發(fā) 后端
本文描述JBoss JDBC驅(qū)動(dòng)時(shí)會(huì)拋出異常,以及解決方法和問題分析。

問題描述:
JBoss JDBC驅(qū)動(dòng)時(shí),第一次建立如果庫連接會(huì)拋出類似于下面的異常

21:21:36,666 WARN  [JBossManagedConnectionPool] Throwable while attempting to get a new connection: null

org.jboss.resource.JBossResourceException: Could not create connection; - nested throwable: (org.jboss.resource.JBossResourceException: Apparently wrong driver class specified for URL: class: oracle.jdbc.driver.OracleDriver, url: jdbc:oracle:thin:@ 10.0.32 .25:1521:sid)

        at org.jboss.resource.adapter.jdbc.local.LocalManagedConnectionFactory.createManagedConnection(LocalManagedConnectionFactory.java:179)

        at org.jboss.resource.connectionmanager.InternalManagedConnectionPool.createConnectionEventListener(InternalManagedConnectionPool.java:565)

但在第二次取得數(shù)據(jù)庫連接時(shí)卻是正常的。

解決方法:
將JBoss JDBC驅(qū)動(dòng)拷貝到j(luò)boss_server_home/lib目錄下。這個(gè)方法對(duì)于每一個(gè)jboss環(huán)境都需要進(jìn)行這樣的拷貝,比較麻煩。

問題分析:
出現(xiàn)這個(gè)問題的JBoss服務(wù)器配置文件jboss_server_home/deploy/jbossweb-tomcat55.sar/META-INF/jboss-service.xml里的UseJBossWebLoader配置項(xiàng)應(yīng)該都是配置成為false的,即使用的并不是JBoss共享扁平的ClasssLoader并且jboss_server_home/lib不包含JBoss JDBC驅(qū)動(dòng)。下面我們來分析造成這個(gè)問題的具體原因。

首先我們來了解一下JBoss JDBC驅(qū)動(dòng)的管理。JBoss JDBC驅(qū)動(dòng)程序在載入的時(shí)候都會(huì)通過java.sql.DriverManager.registerDriver(Driver)方法將自身注冊(cè)到驅(qū)動(dòng)管理器中。在注冊(cè)后我們就可以通過DriverManager.getDriver(String url)方法取得能夠處理傳入的數(shù)據(jù)庫url的驅(qū)動(dòng)程序,或者通過DriverManager.getConnection(String url, String user, String password)方法取得url對(duì)應(yīng)驅(qū)動(dòng)的連接。但在這里有一個(gè)問題需要我們注意,在取得連接或者驅(qū)動(dòng)的時(shí)候,它需要從已注冊(cè)的驅(qū)動(dòng)里選擇合適的驅(qū)動(dòng)程序出來。這個(gè)合適的驅(qū)動(dòng)總結(jié)出來有兩條

一是當(dāng)前調(diào)用getDriver或getConnect方法的類的ClassLoader能夠載入相應(yīng)的JBoss JDBC驅(qū)動(dòng)程序,并且載入的JBoss JDBC驅(qū)動(dòng)程序類要和已注冊(cè)的驅(qū)動(dòng)程序類相等,調(diào)用getDriver或getConnect方法的類ClassLoader通過本地方法DriverManager.getCallerClassLoader()獲得,它得到調(diào)用類的ClassLoader。

二是對(duì)于符合前面條件的驅(qū)動(dòng),還需要判斷當(dāng)前這個(gè)驅(qū)動(dòng)能不能處理連接url,如果不符合,則從注冊(cè)的驅(qū)動(dòng)里查找下一次驅(qū)動(dòng),如果滿足,則使用這個(gè)驅(qū)動(dòng)來創(chuàng)建連接。

【編輯推薦】

  1. JBoss事務(wù)的一些關(guān)鍵特性
  2. 在JBoss4.0上了解SysBase數(shù)據(jù)庫配置
  3. JBoss和JMS簡(jiǎn)要概述
  4. 學(xué)習(xí)JBoss概述入門
  5. JBoss IPv6應(yīng)用服務(wù)器支持
責(zé)任編輯:佚名 來源: JavaEye
相關(guān)推薦

2009-07-20 13:58:07

MySQL JDBC驅(qū)

2009-06-12 13:40:25

JBoss下載JBoss安裝

2009-07-20 18:01:38

Oracle JDBC

2009-07-06 18:29:55

2009-06-19 17:14:47

JDBC驅(qū)動(dòng)設(shè)置

2009-06-19 15:08:23

JDBC驅(qū)動(dòng)

2009-06-17 09:40:01

JBoss的class

2010-06-30 14:15:08

SQL Server死

2009-07-06 18:17:46

JDBC驅(qū)動(dòng)程序

2017-12-04 10:56:47

MySQL問題分析解決對(duì)策

2009-07-22 13:32:24

JDBC SQL

2009-06-24 15:59:04

消息驅(qū)動(dòng)Bean

2009-07-09 15:06:09

SQL Server

2009-06-15 14:16:17

JBoss與Tomca

2011-04-28 15:35:38

打印驅(qū)動(dòng)

2021-03-01 19:09:45

編程程序代碼

2025-01-15 08:49:27

2023-08-23 15:33:15

數(shù)據(jù)倉庫數(shù)據(jù)分析

2012-08-08 14:33:32

IBMdW

2023-09-05 16:30:53

數(shù)據(jù)倉庫數(shù)據(jù)分析
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)