docs: @Override
      public void actionCommit() {
  
          List<Throwable> errors = new ArrayList<Throwable>();
  
          try {
  
              // if new create it first
              if (!m_searchManager.getSearchIndexesAll().contains(m_index)) {
                  // check the index name for invalid characters
                  CmsStringUtil.checkName(
                      m_index.getName(),
                      INDEX_NAME_CONSTRAINTS,
                      Messages.ERR_SEARCHINDEX_BAD_INDEXNAME_4,
                      Messages.get());
                  // empty or null name and uniqueness check in add method
                  m_searchManager.addSearchIndex(m_index);
              }
              // check if field configuration has been updated, if thus set field configuration to the now used
              if (!m_index.getFieldConfigurationName().equals(m_index.getFieldConfiguration().getName())) {
                  m_index.setFieldConfiguration(
                      m_searchManager.getFieldConfiguration(m_index.getFieldConfigurationName()));
              }
              writeConfiguration();
  
          } catch (Throwable t) {
              errors.add(t);
          }
  
          // set the list of errors to display when saving failed
          setCommitErrors(errors);
      }