I am getting ClassCastException while trying to execute camel route
from("timer://messageSplitterTest?repeatCount=1")
.process(exchange -> {
Message message = exchange.getMessage();
List<Message> ongoingMessages = new ArrayList<>();
for (int i = 0; i < 10; i++) {
Message listMessage = message.copy();
listMessage.setHeader("count", String.valueOf(i));
ongoingMessages.add(listMessage);
}
exchange.getIn().setBody(ongoingMessages);
exchange.getIn().setHeader("primary", "true");
})
.choice()
.when(header("primary").isEqualTo("true"))
.split(body())
.process(exchange -> {
Message msg = exchange.getMessage();
System.out.println("After Split, count=" +
msg.getHeader("count", String.class));
})
.split(body())
.to("stream:out")
.endChoice()
.otherwise()
.to("stream:out")
.end()
;
I got below error
Exception in thread "main" java.lang.ClassCastException:
org.apache.camel.model.SplitDefinition cannot be cast to
org.apache.camel.model.ChoiceDefinition
at
org.apache.camel.model.ProcessorDefinition.endChoice(ProcessorDefinition.java:1415)
at
com.temenos.tti.test.utils.camel.MessageSplitCamelTest4$1.configure(MessageSplitCamelTest4.java:40)
Kindly Help me to fix this error.