Topic: 向大哥们求救hibernate连接informix数据库的问题 |
Print this page |
1.向大哥们求救hibernate连接informix数据库的问题 | Copy to clipboard |
Posted by: hanry_mary Posted on: 2006-05-28 20:15 我用hibernate连接informix数据库,一个数据库环境在34.0.191.2:6666/rmsdb上,一个在34.0.50.182:1888/smisdb,web端代码相同,但由于要连接不同的数据库,所以部署成了两个web应用,hibernate的配置文件也相同,只是连接的数据库不同,我在jsp中测试Connnection dbOper = DriverManager.getConnection("jdbc:informix-sqli://34.0.191.2:6666/rmsdb:informixserver=test", "user","pass");和dbOper = DriverManager.getConnection("jdbc:informix-sqli://34.0.50.188:1888/smisdb:informixserver=特test1", "user1","pass1");都是连接成功的,但用hibernate连接34.0.191.2:6666/rmsdb却是不成功的,用hibernate连接34.0.50.182:1888/smisdb又是成功的,为什么会这样。配置文件为: <property name="hibernate.connection.driver_class">com.informix.jdbc.IfxDriver</property> <property name="hibernate.connection.url">jdbc:informix-sqli://34.0.191.2:6666/rmsdb:informixserver=test</property> <property name="hibernate.connection.username">user</property> <property name="hibernate.connection.password">pass</property> <property name="hibernate.dialect">org.hibernate.dialect.InformixDialect</property> <property name="hibernate.connection.pool_size">20</property> <property name="hibernate.connection.autocommit">false</property> <property name="hibernate.show_sql">false</property> 连接182机器的url不同,当能连接成功。 连接34.0.191.2这个机器的数据库时报错信息如下: 2006-05-28 19:56:02,093 INFO [net.sf.hibernate.connection.DriverManagerConnectionProvider] - <using driver: com.informix.jdbc.IfxDriver at URL: jdbc:informix-sqli://34.0.191.2:6666/rmsdb:informixserver=test> 2006-05-28 19:56:02,093 INFO [net.sf.hibernate.connection.DriverManagerConnectionProvider] - <connection properties: {user=rms, password=rms, autocommit=false}> 2006-05-28 19:56:02,109 INFO [net.sf.hibernate.transaction.TransactionManagerLookupFactory] - <No TransactionManagerLookup configured (in JTA environment, use of process level read-write cache is not recommended)> 2006-05-28 19:56:02,375 WARN [net.sf.hibernate.cfg.SettingsFactory] - <Could not obtain connection metadata> java.sql.SQLException: 不支持事务 at com.informix.util.IfxErrMsg.getSQLException(IfxErrMsg.java:373) at com.informix.jdbc.IfxSqliConnect.setAutoCommit(IfxSqliConnect.java:1812) at net.sf.hibernate.connection.DriverManagerConnectionProvider.getConnection(DriverManagerConnectionProvider.java:103) at net.sf.hibernate.cfg.SettingsFactory.buildSettings(SettingsFactory.java:72) at net.sf.hibernate.cfg.Configuration.buildSettings(Configuration.java:1132) at net.sf.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:766) at com.adtec.moia.dao.hibernate.HibernateSessionHelper.<clinit>(HibernateSessionHelper.java:28) at com.adtec.moia.dao.hibernate.HibernateProxyImpl.<init>(HibernateProxyImpl.java:35) at com.adtec.moia.dao.hibernate.UserDaoHibernate.<init>(UserDaoHibernate.java:34) at com.adtec.moia.dao.hibernate.DaoFactory.getUserDao(DaoFactory.java:34) at com.adtec.moia.web.LogonAction.execute(LogonAction.java:51) at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:484) at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:274) at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1482) at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:525) at javax.servlet.http.HttpServlet.service(HttpServlet.java:760) at javax.servlet.http.HttpServlet.service(HttpServlet.java:853) at weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run(ServletStubImpl.java:1006) at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:419) at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:28) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:27) at com.adtec.moia.filter.HibernateSessionFilter.doFilter(HibernateSessionFilter.java:43) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:27) at com.adtec.moia.filter.CharacterEncodingFilter.doFilter(CharacterEncodingFilter.java:62) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:27) at com.adtec.moia.filter.LoggerFilter.doFilter(LoggerFilter.java:109) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:27) at com.adtec.moia.filter.PermissionFilter.doFilter(PermissionFilter.java:77) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:27) at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:6724) at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321) at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121) at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:3764) at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:2644) at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:219) at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:178) 2006-05-28 19:56:02,390 INFO [net.sf.hibernate.cfg.SettingsFactory] - <Use scrollable result sets: false> 2006-05-28 19:56:02,390 INFO [net.sf.hibernate.cfg.SettingsFactory] - <Use JDBC3 getGeneratedKeys(): false> 2006-05-28 19:56:02,390 INFO [net.sf.hibernate.cfg.SettingsFactory] - <Optimize cache for minimal puts: false> 2006-05-28 19:56:02,390 INFO [net.sf.hibernate.cfg.SettingsFactory] - <Query language substitutions: {}> 2006-05-28 19:56:02,390 INFO [net.sf.hibernate.cfg.SettingsFactory] - <cache provider: net.sf.ehcache.hibernate.Provider> 2006-05-28 19:56:02,437 INFO [net.sf.hibernate.cfg.Configuration] - <instantiating and configuring caches> 2006-05-28 19:56:02,500 INFO [net.sf.hibernate.impl.SessionFactoryImpl] - <building session factory> 2006-05-28 19:56:03,796 INFO [net.sf.hibernate.impl.SessionFactoryObjectFactory] - <Factory name: moia> 2006-05-28 19:56:03,812 INFO [net.sf.hibernate.util.NamingHelper] - <JNDI InitialContext properties:{}> 2006-05-28 19:56:03,906 INFO [net.sf.hibernate.impl.SessionFactoryObjectFactory] - <Bound factory to JNDI name: moia> 2006-05-28 19:56:03,906 WARN [net.sf.hibernate.impl.SessionFactoryObjectFactory] - <InitialContext did not implement EventContext> 2006-05-28 19:56:04,265 WARN [net.sf.hibernate.util.JDBCExceptionReporter] - <SQL Error: -79744, SQLState: IX000> 2006-05-28 19:56:04,265 ERROR [net.sf.hibernate.util.JDBCExceptionReporter] - <不支持事务> 2006-05-28 19:56:04,265 ERROR [net.sf.hibernate.util.JDBCExceptionReporter] - <Cannot open connection> java.sql.SQLException: 不支持事务 at com.informix.util.IfxErrMsg.getSQLException(IfxErrMsg.java:373) at com.informix.jdbc.IfxSqliConnect.setAutoCommit(IfxSqliConnect.java:1812) at net.sf.hibernate.connection.DriverManagerConnectionProvider.getConnection(DriverManagerConnectionProvider.java:103) at net.sf.hibernate.impl.BatcherImpl.openConnection(BatcherImpl.java:278) at net.sf.hibernate.impl.SessionImpl.connect(SessionImpl.java:3297) at net.sf.hibernate.impl.SessionImpl.connection(SessionImpl.java:3277) at net.sf.hibernate.impl.BatcherImpl.prepareQueryStatement(BatcherImpl.java:65) at net.sf.hibernate.loader.Loader.prepareQueryStatement(Loader.java:704) at net.sf.hibernate.loader.Loader.doQuery(Loader.java:185) at net.sf.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:133) at net.sf.hibernate.loader.Loader.doList(Loader.java:955) at net.sf.hibernate.loader.Loader.list(Loader.java:946) at net.sf.hibernate.hql.QueryTranslator.list(QueryTranslator.java:834) at net.sf.hibernate.impl.SessionImpl.find(SessionImpl.java:1536) at net.sf.hibernate.impl.SessionImpl.find(SessionImpl.java:1513) at net.sf.hibernate.impl.SessionImpl.find(SessionImpl.java:1505) at com.adtec.moia.dao.hibernate.HibernateDaoImpl.find(HibernateDaoImpl.java:71) at com.adtec.moia.dao.hibernate.HibernateProxyImpl.find(HibernateProxyImpl.java:156) at com.adtec.moia.dao.hibernate.UserDaoHibernate.findUserByName(UserDaoHibernate.java:70) at com.adtec.moia.web.LogonAction.execute(LogonAction.java:65) at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:484) at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:274) at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1482) at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:525) at javax.servlet.http.HttpServlet.service(HttpServlet.java:760) at javax.servlet.http.HttpServlet.service(HttpServlet.java:853) at weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run(ServletStubImpl.java:1006) at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:419) at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:28) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:27) at com.adtec.moia.filter.HibernateSessionFilter.doFilter(HibernateSessionFilter.java:43) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:27) at com.adtec.moia.filter.CharacterEncodingFilter.doFilter(CharacterEncodingFilter.java:62) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:27) at com.adtec.moia.filter.LoggerFilter.doFilter(LoggerFilter.java:109) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:27) at com.adtec.moia.filter.PermissionFilter.doFilter(PermissionFilter.java:77) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:27) at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:6724) at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321) at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121) at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:3764) at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:2644) at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:219) at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:178) 2006-05-28 19:56:04,312 WARN [org.apache.struts.action.RequestProcessor] - <Unhandled Exception thrown: class com.adtec.moia.exception.DaoException> <2006-5-28 下午07时56分04秒 CST> <Error> <HTTP> <BEA-101017> <[ServletContext(id=13182325,name=rms,context-path=/rms)] Root cause of ServletException. com.adtec.moia.exception.DaoException: Cannot open connection at com.adtec.moia.dao.hibernate.HibernateProxyImpl.find(HibernateProxyImpl.java:159 |
Powered by Jute Powerful Forum® Version Jute 1.5.6 Ent Copyright © 2002-2021 Cjsdn Team. All Righits Reserved. 闽ICP备05005120号-1 客服电话 18559299278 客服信箱 714923@qq.com 客服QQ 714923 |