您的位置:首页 > 产品设计 > UI/UE

解决risefile控件经常出现《保存文件失败could not execute query》的问题

2009-10-28 11:46 936 查看
问题:

附件控件在使用一段时间后,出现“保存文件失败could not execute query”,报如下错误:

2009-10-28 10:24:57,592 WARN (JDBCExceptionReporter.java:71) - SQL Error: 17008, SQLState: 99999
2009-10-28 10:24:57,592 ERROR (JDBCExceptionReporter.java:72) - 关闭的连接
2009-10-28 10:24:57,593 WARN (JDBCExceptionReporter.java:71) - SQL Error: 17008, SQLState: 99999
2009-10-28 10:24:57,594 ERROR (JDBCExceptionReporter.java:72) - 关闭的连接
2009-10-28 10:24:57,594 INFO (SysAbstractFileManager.java:93) - could not execute query
org.hibernate.exception.GenericJDBCException: could not execute query

原因:

hibernate默认的连接池有问题,最好使用c3p0连接池

解决方法:

将HibernateFactory中

config.setProperty("hibernate.proxool.pool_alias","pool1")
.setProperty("hibernate.jdbc.batch_size","25")
.setProperty("hibernate.cache.use_query_cache","true")
.setProperty("show_sql","true")
.setProperty("hibernate.hbm2ddl.auto","update")
.setProperty("hibernate.query.factory_class","org.hibernate.hql.classic.ClassicQueryTranslatorFactory")
.addClass(net.risesoft.components.risefile.RiseFile.class);

替换为:

config.setProperties("hibernate.connection.provider_class","org.hibernate.connection.C3P0ConnectionProvider")
.setProperty("hibernate.c3p0.max_size","25")
.setProperty("hibernate.c3p0.min_size","5")
.setProperty("hibernate.c3p0.timeout","120")
.setProperty("hibernate.c3p0.max_statements","100")
.setProperty("hibernate.c3p0.idle_test_period","120")
.setProperty("hibernate.c3p0.acquire_increment","2")
.setProperty("show_sql","true")
.setProperty("hibernate.hbm2ddl.auto","update")
.setProperty("hibernate.query.factory_class","org.hibernate.hql.classic.ClassicQueryTranslatorFactory")
.addClass(net.risesoft.components.risefile.RiseFile.class);

参考文章:

http://hi.baidu.com/zuotong05/blog/item/273eb435bb1bf61091ef3940.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐