code: protected void start(FailureHandler failureHandler) throws Exception {
  		do {
  			Throwable error = doStart();
  			if (error == null) {
  				return;
  			}
  			if (failureHandler.handle(error) == Outcome.ABORT) {
  				return;
  			}
  		}
  		while (true);
  	}
docs: Start the application.
  @param failureHandler a failure handler for application that won't start
  @throws Exception in case of errors