项目中一个应用持久层配置为Hibernate+Proxool,在本地连单Oracle数据库没有问题,部署到现网Oracle RAC环境时总是报错
[WARN ] Could not obtain connection metadata
java.sql.SQLException: Io 异常: Connection refused(DESCRIPTION=(ERR=1153)(VSNNUM=169870336)(ERROR_STACK=(ERROR=(CODE=1153)(EMFI=4)(ARGS='(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.153.233)(PORT=1521))'))(ERROR=(CODE=305)(EMFI=1))))
at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:134)
.........
[ERROR] method:com.fsti.hibernate.util.HibernateUtil.<clinit>(HibernateUtil.java:24)
Initial SessionFactory creation failed.
org.hibernate.HibernateException: Hibernate Dialect must be explicitly set
at org.hibernate.dialect.DialectFactory.determineDialect(DialectFactory.java:57)
............
尝试配置了dialect,第二个错误没有了,但第一个错误还在。
在网上搜索,有人讲是配置错误,我根据网上的使用文档仔细检查了好多遍,没发现啥问题;还好后来搜到一篇文章http://ml365.iteye.com/blog/876114,里面也是连RAC时出现错误,错误信息跟我们遇到的一模一样,这篇文章提到“之前有的是class12.jar,用这个驱动的话很不稳定,时好时坏,于是换了ojdbc.jar,好家伙!怎么折腾都没事!问题解决!”;我检查了这个应用,发现lib下既有classes12.jar,又有ojdbc14.jar,两个jar包中都有oracle.jdbc.driver.OracleDriver,看来问题可能就出在这里。
写个读取数据的测试类部署到现网上,在命令行下执行这个类,如果在classpath里去掉ojdbc14.jar,保留classes12.jar,就出现前面遇到的Connection refused(DESCRIPTION=(ERR=1153)(VSNNUM=169870336)错误;如果执行时在classpath里去掉classes12.jar,保留ojdbc14.jar,没有出现问题,顺利读到了数据。
这样一来,解决方法就出来了,只要将classes12.jar从WEB-INF\lib下删除就可以。
相关推荐
标题中的“hibernate+proxool+Oracle库文件”揭示了这个压缩包包含的是一个集成Hibernate ORM框架、Proxool连接池以及Oracle数据库驱动的软件库。这些组件都是Java开发中用于高效、稳定地处理数据库操作的重要工具。...
在Java的持久层框架Hibernate中,使用Proxool作为连接池是常见的做法,尤其是在较旧的版本如Hibernate 4.1.4中。然而,在实际应用中,可能会遇到一些问题,比如“org.hibernate.engine.jdbc.spi.SqlExceptionHelper ...
标题中的“hibernate3+ proxool-0.9.1配置”涉及到的是在Java开发中,使用Hibernate3 ORM框架与Proxool连接池的整合配置。Hibernate3是一款流行的持久层框架,它允许开发者用面向对象的方式来操作数据库,而Proxool...
本项目采用当前主流的MVC和IOC框架spring 3、优秀的ORM框架hibernate和超级厉害的proxool数据库连接池。这个工程demo,是本人在企业应用中的项目缩影,绝对实用于企业的应用。 适合朋友: 1.一直用单独的servlet和...
在Spring中,我们可以使用`org.apache.commons.dbcp.BasicDataSource`来封装Proxool的配置,如下: ```xml <!-- Proxool配置 --> proxool.poolName=myPool proxool.maxSize=50 proxool....
在本案例中,我们看到一种解决方案,即结合Hibernate ORM框架和Proxool连接池来处理MySQL的自动断连问题。 首先,让我们深入了解一下Hibernate。Hibernate是一个开源的对象关系映射(ORM)框架,它允许Java开发者将...
《Spring3+Hibernate3+Proxool+jstl+Oracle整合详解》 在现代Java Web开发中,集成各种框架以实现高效、灵活的应用程序已成为常态。本示例代码结合了Spring 3.0.4、Hibernate 3.5.0、Proxool 0.9.1、jstl,并利用...
由于项目需求的需要,我们引入了连接池。...我们采用了Hibernate,所以可以考虑hibernate自带的连接池机制,但是发现效率不高,而且Hibernate也推荐使用c3p0或Proxool连接池,在我们的项目中采用了Proxool
自己写的hibernate+proxool的demo整合,亲测可用。项目可以拿来做做参考。如果有什么问题 欢迎留言作讨论。使用的话,请自己配置好proxool.xml文件 以及导入resources里面的sql(这里的sql是demo里面的entity表)
标题 "Hibernate3.5.1+Proxool0.9.1+Oracle10g2实现关键" 提供了一个关于整合三个技术的实践场景:Hibernate 3.5.1(一个流行的Java对象关系映射框架),Proxool 0.9.1(一个数据库连接池)以及Oracle 10g 2(一种...
第一步:hibernate.cfg.xml 加入: <property name="hibernate.proxool.pool_alias">dbpool</property> <property name="hibernate.proxool.xml"> ProxoolConf.xml </property> <property name="connection....
Spring MVC、Hibernate、FreeMarker和Proxool是四个在Java Web开发中常用的技术框架和工具。下面将分别介绍这些技术及其在项目中的作用。 **Spring MVC** Spring MVC是Spring框架的一部分,是一个基于Model-View-...
在IT行业中,Spring、Proxool、Hibernate、Struts2和AOP是五个非常关键的框架和概念,它们在企业级Java应用开发中扮演着重要角色。这些技术的整合使用可以构建出高效、灵活且可维护的Web应用程序。现在我们逐一深入...
在Java Web开发中,Spring、Proxool、Hibernate、Struts2和AOP(面向切面编程)是常用的框架和技术,它们各自承担着不同的职责,组合使用可以构建出高效、可维护的Web应用程序。本文将详细介绍这些技术的整合过程...
SSH(Struts2+Spring3+Hibernate3)是一种常见的Java Web开发框架组合,它整合了MVC框架Struts2、依赖注入容器Spring以及持久层框架Hibernate。这些框架的结合为开发者提供了高效、灵活且可扩展的后端架构。在本项目...