code: @Override
      public Object preInvoke(String servletName) throws SecurityViolationException, IOException {
          // preInvoke will ensure delegation is done when run-as is specified
          return preInvoke(null, null, servletName, true);
      }
docs: This preInvoke is called during init & during destroy of a Servlet class object.
  It will call the other preInvoke to ensure delegation occurs. {@inheritDoc}