Xilai Dai created CAMEL-19512:
---------------------------------
Summary: Simple language not working anymore with InputStreamCache
body
Key: CAMEL-19512
URL: https://issues.apache.org/jira/browse/CAMEL-19512
Project: Camel
Issue Type: Bug
Affects Versions: 3.20.3
Environment: JDK 11
Reporter: Xilai Dai
Attachments: test-setheader.zip
It seems there is a regression from Camel 3.20.3 which is the Simple language
not working anymore with InputStreamCache body.
Given that a simple route:
{code}
from("timer:cTimer_1" + "?period=" + 1 + "&repeatCount=" + 1 +
"&delay=" + 1)
.process(new org.apache.camel.Processor() {
public void
process(org.apache.camel.Exchange exchange) throws Exception {
ByteBuffer buffer =
ByteBuffer.allocate(8);
buffer.putLong(15);
InputStreamCache iscache = new
InputStreamCache(buffer.array());
exchange.getIn().setBody(iscache);
}
}).process(new org.apache.camel.Processor() {
public void
process(org.apache.camel.Exchange exchange) throws Exception {
System.out.println("abc: " +
exchange.getIn().getBody().getClass().getName());
}
}).setHeader("newCustomer").simple("${body}")
.log(org.apache.camel.LoggingLevel.WARN,
"MyRoute.cLog_4",
"header newCustomer value is:
${header.newCustomer}");
{code}
the value of header.newCustomer is always null, whereas in Camel 3.20.2 or
earlier version, it worked well.
Attached a sample project for easily reproduce the issue.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)