我正在使用 Spagobi 版本 3.6.0、Jaybird-2.2.2JDK_1.7 和 Firebird 2.5 (x64)。我设置了一个数据源,测试没问题。
我设置了一个数据集,预览显示了正确的列列表,只是没有数据。通过其他一些 SQL 查看器访问会显示数据。
Catalina 日志中的错误消息是:
org.firebirdsql.jdbc.FBSQLException: The result set is closed
有人知道我做错了什么吗?
经过一些测试,您的问题的解决方案是defaultHoldable=true
在数据源的连接 URL 中指定连接属性,例如:
jdbc:firebirdsql://localhost/database?defaultHoldable=true
如前所述,您还需要升级到 Jaybird 2.2.7,否则您将遇到错误JDBC-304和/或JDBC-305。
我还没有检查 SpagoBI 的代码,但看起来 SpagoBI 假设结果集始终可以通过提交保持并使用自动提交执行其查询。它不应该使用自动提交,或者检查DatabaseMetaData.getResultSetHoldability()
和/或Connection.getHoldability()
明确请求可保存的结果集。