[
https://issues.apache.org/jira/browse/CAMEL-10499?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Claus Ibsen updated CAMEL-10499:
--------------------------------
Fix Version/s: 2.17.6
> camel-sql - error in multiple dynamic IN replacement
> ----------------------------------------------------
>
> Key: CAMEL-10499
> URL: https://issues.apache.org/jira/browse/CAMEL-10499
> Project: Camel
> Issue Type: Bug
> Components: camel-sql
> Affects Versions: 2.18.0
> Reporter: Tomohisa Igarashi
> Assignee: Tomohisa Igarashi
> Fix For: 2.17.6, 2.18.1, 2.19.0
>
>
> Having this sql
> {code:sql}
> select *
> from projects
> where project in (:#in:names)
> and license in (:#in:licenses)
> order by id
> {code}
> and send as following
> {code:java}
> Map<String, Object> headers = new HashMap<>();
> headers.put("names", new String[]{"Camel", "AMQ"});
> headers.put("licenses", new String[]{"ASF", "XXX", "YYY"});
> template.requestBodyAndHeaders("direct:query", "Hi there!", headers);
> {code}
> causes parameter mismatch
> {code}
> Caused by: java.sql.SQLException: Number of parameters mismatch. Expected: 4,
> was: 5
> at
> org.apache.camel.component.sql.DefaultSqlPrepareStatementStrategy.populateStatement(DefaultSqlPrepareStatementStrategy.java:152)
> ~[classes/:?]
> at
> org.apache.camel.component.sql.SqlProducer$2.doInPreparedStatement(SqlProducer.java:146)
> ~[classes/:?]
> at
> org.apache.camel.component.sql.SqlProducer$2.doInPreparedStatement(SqlProducer.java:116)
> ~[classes/:?]
> at
> org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:633)
> ~[spring-jdbc-4.3.4.RELEASE.jar:4.3.4.RELEASE]
> ... 51 more
> {code}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)