Since onComplete can only be RouteBuilder actions. To create a truly global onComplete processor
// Initialize an instance of the definition OnCompletionDefinition globalOnComplete = new OnCompletionDefinition(); globalOnComplete.to("log:onComplete");
In your RouteBuilder implementation RouteBuilder before defining any routes, add the above example to the definition
@Override public void configure() throws Exception { // Add onCompletion instance for all routes within this RouteBuilder this.getRouteCollection() .getOnCompletions() .add(globalOnComplete); // Route definition from("direct:input").to("log:output"); }
source share