Hi all,
Another question.
In camel-1.4 I have configuration:
<route>
<from uri="timer://kickoff?period=10000&delay=1"/>
<setBody><constant>bla-bla</constant></setBody>
<filter>
<el>${in.headers['org.apache.camel.timer.name'] ==
'kickoff'}</el>
<to uri='mock:filtered'/>
</filter>
</route>
And here is the trace:
2008-08-23 07:51:01,768 [d=10000&delay=1] INFO TraceInterceptor
- ID-ubuntu/45497-1219477861659/1-0 -> interceptor1
Interceptor[Delegate(Pipeline[DeadLetterChannel[Delegate(TraceInterceptor[SetBody[
constantExpression[bla-bla]]]),
RecipientList[log:org.apache.camel.DeadLetterChannel?level=error],
RedeliveryPolicy[maximumRedeliveries=6]],
DeadLetterChannel[Delegate(TraceInterceptor[Filter[
elExpression[${in.headers['org.apache.camel.timer.name'] == 'kickoff'}]
-> [To[mock:filtered]]]]),
RecipientList[log:org.apache.camel.DeadLetterChannel?level=error],
RedeliveryPolicy[maximumRedeliveries=6]]])] InOnly
Properties:{org.apache.camel.timer.name=kickoff,
org.apache.camel.timer.period=10000} Headers:{} BodyType:null
Body:Message: null
2008-08-23 07:51:01,776 [d=10000&delay=1] INFO TraceInterceptor
- ID-ubuntu/45497-1219477861659/1-0 -> setBody1 SetBody[
constantExpression[bla-bla]] InOnly
Properties:{org.apache.camel.timer.name=kickoff,
org.apache.camel.timer.period=10000} Headers:{} BodyType:null
Body:Message: null
2008-08-23 07:51:01,777 [d=10000&delay=1] INFO TraceInterceptor
- ID-ubuntu/45497-1219477861659/1-0 -> filter1 Filter[
elExpression[${in.headers['org.apache.camel.timer.name'] == 'kickoff'}]
-> [To[mock:filtered]]] InOnly
Properties:{org.apache.camel.timer.name=kickoff,
org.apache.camel.timer.period=10000} Headers:{} BodyType:String Body:bla-bla
So message does not make it through the filter. If I replace "==" to
"!=" then it works. But trace shows that this header is present in the
message. Any ideas?
Vadim.