@Override
 public void hookFinally(ActionRuntime runtime) { // application may override
   if (runtime.isForwardToHtml()) {
     runtime.registerData(
         "headerBean",
         getUserBean()
             .map(
                 userBean -> {
                   return new WaterfrontHeaderBean(userBean);
                 })
             .orElse(WaterfrontHeaderBean.empty()));
   }
   super.hookFinally(runtime);
 }
 // ===================================================================================
 //                                                                               Hook
 //                                                                              ======
 @Override
 protected void setupHtmlData(final ActionRuntime runtime) {
   super.setupHtmlData(runtime);
   runtime.registerData("helpLink", systemHelper.getHelpLink("failureUrl"));
 }