[
https://issues.apache.org/jira/browse/CAMEL-7251?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13915039#comment-13915039
]
ASF GitHub Bot commented on CAMEL-7251:
---------------------------------------
GitHub user boretti opened a pull request:
https://github.com/apache/camel/pull/104
CAMEL-7251 SqlProducer call twice the getResultSet on the PreparedStatement
=> This cause issue with HSQLDB (NPE)
According https://issues.apache.org/jira/browse/CAMEL-7251
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/boretti/camel camel-7251
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/camel/pull/104.patch
To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:
This closes #104
----
commit e44f258a2f4fac85dcb67c48a9dc9ae129aa87e8
Author: boretti <[email protected]>
Date: 2014-02-27T20:56:04Z
SqlProducer call twice the getResultSet on the PreparedStatement => This
cause issue with HSQLDB (NPE)
----
> SqlProducer call twice the getResultSet on the PreparedStatement => This
> cause issue with HSQLDB (NPE)
> ------------------------------------------------------------------------------------------------------
>
> Key: CAMEL-7251
> URL: https://issues.apache.org/jira/browse/CAMEL-7251
> Project: Camel
> Issue Type: Bug
> Components: camel-sql
> Affects Versions: 2.12.3
> Reporter: Mathieu Boretti
>
> The SqlProducer class use the following lines of code :
> ResultSet rs = ps.getResultSet();
> SqlOutputType outputType =
> getEndpoint().getOutputType();
> log.trace("Got result list from query: {},
> outputType={}", rs, outputType);
> if (outputType == SqlOutputType.SelectList) {
> List<Map<String, Object>> data =
> getEndpoint().queryForList(ps.getResultSet());
> .................................
> } else if (outputType == SqlOutputType.SelectOne) {
> Object data =
> getEndpoint().queryForObject(ps.getResultSet());
> .................................
> } else {
> throw new IllegalArgumentException("Invalid
> outputType=" + outputType);
> }
> The problem is that the ResultSet is retrieved at the start, and then only
> used for the log. Later, when the result set is required, a new call to
> getResultSet is done. It is an issue with HSQL DB (tested with version 2.3.0
> and 2.3.2 of HSQL DB), which in this case return null for the second call.
> As the ResultSet is already available in a variable "rs", I would recommand
> to use this variable to replace the two last call to ps.getResultSet().
> Thanks
--
This message was sent by Atlassian JIRA
(v6.1.5#6160)