【问题标题】:SpagoBI + Firebird DataSource (The result set is closed)SpagoBI + Firebird DataSource(结果集关闭)
【发布时间】:2015-05-27 15:02:25
【问题描述】:

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

我设置了一个数据集,预览显示了正确的列列表,只是没有数据。通过其他一些 SQL 查看器访问会显示数据。

Catalina 日志中的错误信息是:

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

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

【问题讨论】:

  • 尝试升级到 Jaybird 2.2.7,确保您使用 autoCommit=false,或者使用可保存的结果集。
  • 另外:发布一些代码(或者如果这是一个工具:配置的详细信息等)。
  • 您可能会遇到在 Jaybird 2.2.3 中修复的错误 JDBC-304JDBC-305

标签: firebird jaybird spagobi


【解决方案1】:

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

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

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

我还没有检查 SpagoBI 的代码,但看起来 SpagoBI 假设结果集始终可以通过提交保持并使用自动提交执行其查询。它不应该使用自动提交,或者检查DatabaseMetaData.getResultSetHoldability() 和/或Connection.getHoldability() 并明确请求可保存的结果集。

【讨论】:

  • 嗨,马克!非常感谢!添加?defaultHoldable=true 参数后问题解决了。之后,它适用于所有 Jaybird 版本。非常感谢;)
  • @JoabeLucena 很高兴它成功了。如果它解决了你的问题,那么请接受答案。
  • 很抱歉,以前从未问过;)
猜你喜欢
  • 2011-11-21
  • 2011-01-31
  • 2013-01-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-09-11
相关资源
最近更新 更多