小编Sar*_*run的帖子

Apache Camel 如何从 sql 组件访问 Header 值

我正在尝试使用属性 header.CamelSqlRowCount 打印由 sql 组件选择的行数。但是,该值即将为空。我添加了另一篇文章中提到的跟踪来检查标题值,并且只打印了breadcrumbId。谁能告诉我我是否做错了什么?

骆驼路线

        <endpoint id="sqlComponent" uri="sql:${sql.pollerQuery}?dataSource=DataSource&amp;consumer.delay=60000&amp;consumer.useIterator=false"/>
    <route id="root">
        <from ref="sqlComponent"/>
        <log message="Received ${header.CamelSqlRowCount} records from the poller query"/>
        <log message="Message Body= ${body}"/>
    </route>
Run Code Online (Sandbox Code Playgroud)

记录的跟踪如下

DEBUG 2017-11-16 18:01:00 [Camel (camel-1) thread #0 - sql://SELECT%20ID%20FROM%20TABLE%20WHERE%20PUBLISHED%20=%20'N'] Executing query: SELECT ID FROM TABLE WHERE PUBLISHED = 'N'
INFO  2017-11-16 18:01:01 [Camel (camel-1) thread #0 - sql://SELECT%20ID%20FROM%20TABLE%20WHERE%20PUBLISHED%20=%20'N'] ID-MyMachine >>> (root) from(sql://SELECT%20ID%20FROM%20TABLE%20WHERE%20PUBLISHED%20=%20'N'?consumer.delay=60000&consumer.useIterator=false&dataSource=odsDataSource) --> log[Received ${header.CamelSqlRowCount} records from the poller query] <<< Pattern:InOnly, Headers:{breadcrumbId=ID-MyMachine}, BodyType:java.util.ArrayList, Body:[{ID=1}, {ID=2}, {ID=3}, {ID=4}, {ID=5}]
INFO  2017-11-16 18:01:01 [Camel …
Run Code Online (Sandbox Code Playgroud)

apache-camel camel-sql

3
推荐指数
1
解决办法
1239
查看次数

标签 统计

apache-camel ×1

camel-sql ×1