jboss升级报错

fsolsh 2013-02-04 03:49:15
项目原来运行在jboss3.2.3上,之后系统升级,使用jdk1.6重新编译打包,部署在jboss4上(jboss4.0.5),系统使用oracle数据库,版本是9i,数据库驱动也由原来的ojdbc14换成了ojdbc6,现在出现的问题是,访问需要读取数据库数据的页面,第一次总会报错(但是不影响数据库的连接,可以连接并查询数据),不知该如何处理,请各位不吝赐教,具体的错误信息如下:

2013-02-04 15:29:18,546 ERROR [STDERR] 2013-2-4 15:29:18 oracle.jdbc.driver.OracleDriver registerMBeans
: Error while registering Oracle JDBC Diagnosability MBean.
java.lang.Error: Loader repository is not an instance of LoaderRepository: org.jboss.mx.loading.UnifiedLoaderRepository3
at org.jboss.mx.server.MBeanServerImpl.getClassLoaderRepository(MBeanServerImpl.java:1123)
at org.jboss.mx.server.MBeanServerImpl.<init>(MBeanServerImpl.java:199)
at org.jboss.mx.server.MBeanServerBuilderImpl.newMBeanServer(MBeanServerBuilderImpl.java:71)
at javax.management.MBeanServerFactory.newMBeanServer(MBeanServerFactory.java:310)
at javax.management.MBeanServerFactory.createMBeanServer(MBeanServerFactory.java:213)
at javax.management.MBeanServerFactory.createMBeanServer(MBeanServerFactory.java:174)
at sun.management.ManagementFactory.createPlatformMBeanServer(ManagementFactory.java:302)
at java.lang.management.ManagementFactory.getPlatformMBeanServer(ManagementFactory.java:504)
at oracle.jdbc.driver.OracleDriver.registerMBeans(OracleDriver.java:302)
at oracle.jdbc.driver.OracleDriver$1.run(OracleDriver.java:199)
at java.security.AccessController.doPrivileged(Native Method)
at oracle.jdbc.driver.OracleDriver.<clinit>(OracleDriver.java:195)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:247)
at sun.misc.Service$LazyIterator.next(Service.java:271)
at java.sql.DriverService.run(DriverManager.java:664)
at java.security.AccessController.doPrivileged(Native Method)
at java.sql.DriverManager.loadInitialDrivers(DriverManager.java:506)
at java.sql.DriverManager.initialize(DriverManager.java:612)
at java.sql.DriverManager.getDriver(DriverManager.java:228)
at org.jboss.resource.adapter.jdbc.local.LocalManagedConnectionFactory.isDriverLoadedForURL(LocalManagedConnectionFactory.java:300)
at org.jboss.resource.adapter.jdbc.local.LocalManagedConnectionFactory.getDriver(LocalManagedConnectionFactory.java:264)
at org.jboss.resource.adapter.jdbc.local.LocalManagedConnectionFactory.createManagedConnection(LocalManagedConnectionFactory.java:170)
at org.jboss.resource.connectionmanager.InternalManagedConnectionPool.createConnectionEventListener(InternalManagedConnectionPool.java:565)
at org.jboss.resource.connectionmanager.InternalManagedConnectionPool.getConnection(InternalManagedConnectionPool.java:250)
at org.jboss.resource.connectionmanager.JBossManagedConnectionPool$BasePool.getConnection(JBossManagedConnectionPool.java:491)
at org.jboss.resource.connectionmanager.BaseConnectionManager2.getManagedConnection(BaseConnectionManager2.java:341)
at org.jboss.resource.connectionmanager.TxConnectionManager.getManagedConnection(TxConnectionManager.java:301)
at org.jboss.resource.connectionmanager.BaseConnectionManager2.allocateConnection(BaseConnectionManager2.java:396)
at org.jboss.resource.connectionmanager.BaseConnectionManager2$ConnectionManagerProxy.allocateConnection(BaseConnectionManager2.java:842)
at org.jboss.resource.adapter.jdbc.WrapperDataSource.getConnection(WrapperDataSource.java:88)
at net.sf.hibernate.connection.DatasourceConnectionProvider.getConnection(DatasourceConnectionProvider.java:59)
at net.sf.hibernate.cfg.SettingsFactory.buildSettings(SettingsFactory.java:72)
at net.sf.hibernate.cfg.Configuration.buildSettings(Configuration.java:1119)
at net.sf.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:748)
at com.bsteel.portal2.util.HibernateUtil.getSessionFactory(HibernateUtil.java:65)
at com.bsteel.portal2.util.HibernateUtil.getSession(HibernateUtil.java:39)


附HibernateUtil的代码如下:

package com.bsteel.portal2.util;

import net.sf.hibernate.Session;
import net.sf.hibernate.SessionFactory;
import net.sf.hibernate.cfg.Configuration;

public class HibernateUtil {
// hibernate session factory
private static SessionFactory factory;

/**
* 获取一个hibernate session
*
* @throws DBException
* @return Session
*/
public static Session getSession() throws Exception {
Session s = null;
try {
getSessionFactory();
s = factory.openSession();
} catch (Exception e) {
throw e;
}
return s;
}

/**
* 获取一个hibernate session factory
*
* @throws Exception
* @return SessionFactory
*/
public static synchronized SessionFactory getSessionFactory() throws Exception {
if (factory != null) {
return factory;
}
Configuration cfg = new Configuration();
cfg.configure("/portal2/hibernate.cfg.portal2.xml");
factory = cfg.buildSessionFactory();
if (factory == null) {
throw new Exception("factory not found");
}
return factory;
}
}
...全文
146 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
fsolsh 2013-02-04
  • 打赏
  • 举报
回复
最近在csdn提问的问题,都是很久没有一个人回复,不晓得是怎么啦?

67,513

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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