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.

Reply via email to