SpagoBI + Firebird DataSource(结果集已关闭) [英] SpagoBI + Firebird DataSource (The result set is closed)

查看:86
本文介绍了SpagoBI + Firebird DataSource(结果集已关闭)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在使用Spagobi版本3.6.0,Jaybird-2.2.2JDK_1.7和Firebird 2.5(x64).我设置了一个数据源,测试就可以了.

I am using Spagobi version 3.6.0, Jaybird-2.2.2JDK_1.7 and Firebird 2.5 (x64). I set up a datasource and the testing is OK.

我建立了一个数据集,并且预览显示了正确的colunms列表,只有没有数据.通过其他SQL查看器访问将显示数据.

I set up a dataset and the preview shows the correct list of colunms, only there is no data. Access via some other SQL viewer shows the data.

Catalina日志中的错误消息是:

The error message in the Catalina log is:

org.firebirdsql.jdbc.FBSQLException: The result set is closed 

有人知道我做错了什么吗?

Does anybody have an idea what I did wrong?

推荐答案

经过测试后,解决问题的方法是在数据源的连接URL中指定连接属性defaultHoldable=true,例如:

After some testing the solution to your problem is to specify the connection property defaultHoldable=true in the connection URL of the datasource, so for example:

jdbc:firebirdsql://localhost/database?defaultHoldable=true

如前所述,您还需要升级到Jaybird 2.2.7,否则您将遇到错误 JDBC-304 和/或 JDBC-305 .

As commented earlier you also need to upgrade to Jaybird 2.2.7, otherwise you will be confronted with bugs JDBC-304 and/or JDBC-305.

我还没有检查SpagoBI的代码,但是SpagoBI似乎认为结果集在提交时始终是可保留的,并使用自动提交执行查询.它要么不使用自动提交,要么不检查DatabaseMetaData.getResultSetHoldability()和/或Connection.getHoldability()并明确请求可保留的结果集.

I haven't checked the code of SpagoBI, but it looks like SpagoBI assumes that result sets are always holdable over commit and executes its queries using auto commit. It should either not use auto commit, or check the DatabaseMetaData.getResultSetHoldability() and/or Connection.getHoldability() and explicitly request holdable result sets.

这篇关于SpagoBI + Firebird DataSource(结果集已关闭)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆