Java CamelJDBC路由-CamelJdbcRowCount丢失

Java CamelJDBC路由-CamelJdbcRowCount丢失,java,jdbc,apache-camel,Java,Jdbc,Apache Camel,我有一个非常简单的方法从数据库中读取一些行: from("timer://runOnce?repeatCount=1&delay=1000"). setBody(constant("select * from some_table")) .to("jdbc:dataSource?outputType=StreamList") .log("Processing $simple{in.header.CamelJdbc

我有一个非常简单的方法从数据库中读取一些行:

  from("timer://runOnce?repeatCount=1&delay=1000").
            setBody(constant("select * from some_table"))
            .to("jdbc:dataSource?outputType=StreamList")
            .log("Processing $simple{in.header.CamelJdbcRowCount} rows")
            .split(body()).streaming().to("direct:createChunk");
我想在处理完所有行/块之后做一些清理工作,并想将处理的行数与select中的CamelJdbcRowCount进行比较以完成这项工作

但是,根本没有设置CamelJdbcRowCount。我能找到的唯一JDBC头是CamelJdbcColumnNames

我错过了什么

是否有其他/更好的方法来实现我想要的,而不是查看行数

编辑:我刚刚注意到,如果我删除'outputType=StreamList',我会得到预期的CamelJdbcRowCount值。我想这与使用StreamList时得到一个resultset和一个游标/迭代器有关,因此您无法真正计算行数。如果文档能够反映这一点,那就太好了

如何知道何时处理所有行?

您必须在to子句中省略该部分?outputType=StreamList。日志语句本身也可以简化:

.log("read ${header.CamelJdbcRowCount} rows")

您使用哪种骆驼版本?可能是最新版本中修复的错误。所以试着升级。哦,我认为流列表是按需的,所以没有办法提前知道总数