docs: private void init(CmsObject userCms, CmsObject adminCms) {
  
          List<I_CmsFormatterBean> filteredFormatters = new ArrayList<I_CmsFormatterBean>();
          for (I_CmsFormatterBean formatter : m_allFormatters) {
  
              if (formatter.getJspStructureId() == null) {
                  // a formatter may have been re-used so the structure id is already available
                  CmsResource res = null;
                  // first we make sure that the JSP exists at all (and also we read the UUID that way)
                  try {
                      // first get a cms copy so we can mess up the context without modifying the original
                      CmsObject cmsCopy = OpenCms.initCmsObject(adminCms);
                      cmsCopy.getRequestContext().setCurrentProject(userCms.getRequestContext().getCurrentProject());
                      // switch to the root site
                      cmsCopy.getRequestContext().setSiteRoot("");
                      // now read the JSP
                      res = cmsCopy.readResource(formatter.getJspRootPath());
                  } catch (CmsException e) {
                      //if this happens the result is null and we write a LOG error
                  }
                  if ((res == null) || !CmsResourceTypeJsp.isJsp(res)) {
                      // the formatter must exist and it must be a JSP
                      LOG.error(
                          Messages.get().getBundle().key(
                              Messages.ERR_FORMATTER_JSP_DONT_EXIST_1,
                              formatter.getJspRootPath()));
                  } else {
                      formatter.setJspStructureId(res.getStructureId());
                      // res may still be null in case of failure
                  }
              }
  
              if (formatter.getJspStructureId() != null) {
                  filteredFormatters.add(formatter);
              } else {
                  LOG.warn("Invalid formatter: " + formatter.getJspRootPath());
              }
          }
          Collections.sort(filteredFormatters, new FormatterComparator());
          m_allFormatters = Collections.unmodifiableList(filteredFormatters);
      }