Following is the route : public class MyRouteBuilder extends RouteBuilder { @Override public void configure() throws Exception { // xnc route here String xncFileSupport = ICEndPoints.getValue(XNC_FILE_SUPPORT); if (XNC_SUPPORT_ON.equalsIgnoreCase(xncFileSupport)) { try { InProcessor inproc = new InProcessor(); String rootXncFolder = ICEndPoints.getRootXNCFolder(); String sourceFolder = getXNCSourceURI(pollDelayParameter,rootXncFolder); AgentAuthProcessor authProc = new AgentAuthProcessor(); ConfigurationUtils utils = ConfigurationUtils.getInstance(); Configuration config = utils.getConfig(); String agentUserPwdUrl = MyUtils.getAgentUserPwdUrl(utils, config); // xnc route starts here from(sourceFolder) // the exception clause here .onException(Exception.class) .maximumRedeliveries(redeliveryCount) .redeliveryDelay(redeliveryDelay) .logHandled(true) .logRetryStackTrace(stackValue) .retryAttemptedLogLevel(LoggingLevel.WARN) .retriesExhaustedLogLevel(LoggingLevel.ERROR) .backOffMultiplier(2.0) .handled(true) .to(SEDA_XNC_EXCEPTION) .end() .process(pickupProc) .choice() .when(header(Constants.GATEWAY_AUTH_VALUE).isEqualTo(true)) .process(authProc) .to(agentUserPwdUrl) .otherwise() .process(authProc) .end() .process(inproc) .recipientList(header(Constants.DESTINATION_URI)) .process(new CommandResponseProcessor()) // try using xpath here also
} } } I want to repeat the following steps from the route based on a condition: .choice() .when(header(Constants.GATEWAY_AUTH_VALUE).isEqualTo(true)) .process(authProc) .to(agentUserPwdUrl) .otherwise() .process(authProc) .end() .process(inproc) .recipientList(header(Constants.DESTINATION_URI)) Iam using camel 2.4 , can you please suggest me how to repeat the above steps from the route based on a condition. Thanks, Chandana