docs: public void initFromSetupBean(String webapp) {
  
          String db = m_setupBean.getDatabase();
          CmsSetupBean bean = m_setupBean;
          Map<String, String[]> params = new HashMap<>();
          m_setupPanel.setVisible(true);
          switch (db) {
              case "mysql":
              case "mssql":
                  setVisible(
                      m_dbCreateUser,
                      m_dbCreatePwd,
                      m_dbWorkUser,
                      m_dbWorkPwd,
                      m_dbCreateConStr,
                      m_dbName,
                      m_createDb,
                      m_dropDatabase);
                  m_dbCreateUser.setValue(bean.getDbCreateUser());
                  m_dbCreatePwd.setValue(bean.getDbCreatePwd());
                  m_dbWorkUser.setValue(bean.getDbWorkUser());
                  m_dbWorkPwd.setValue(bean.getDbWorkPwd());
                  m_dbCreateConStr.setValue(bean.getDbCreateConStr());
                  m_dbName.setValue(webapp != null ? webapp : bean.getDb());
                  m_createDb.setValue(true);
                  m_createDb.setCaption("Create database and tables");
                  m_dropDatabase.setValue(false);
                  break;
              case "postgresql":
                  setVisible(
                      m_dbCreateUser,
                      m_dbCreatePwd,
                      m_dbWorkUser,
                      m_dbWorkPwd,
                      m_dbCreateConStr,
                      m_dbName,
                      m_createDb,
                      m_createTables,
                      m_dropDatabase,
                      m_templateDb);
                  m_dbCreateUser.setValue(bean.getDbCreateUser());
                  m_dbCreatePwd.setValue(bean.getDbCreatePwd());
                  m_dbWorkUser.setValue(bean.getDbWorkUser());
                  m_dbWorkPwd.setValue(bean.getDbWorkPwd());
                  m_dbCreateConStr.setValue(bean.getDbCreateConStr());
                  m_dbName.setValue(webapp != null ? webapp : bean.getDb());
                  m_createDb.setValue(true);
                  m_createDb.setCaption("Create database and user");
                  m_templateDb.setValue(dbProp("templateDb"));
                  m_createTables.setValue(true);
                  m_dropDatabase.setValue(false);
                  break;
              case "hsqldb":
                  setVisible(
                      m_dbCreateUser,
                      m_dbCreatePwd,
                      m_dbWorkUser,
                      m_dbWorkPwd,
                      m_dbCreateConStr,
                      m_createDb,
                      m_dropDatabase);
  
                  m_dbCreateUser.setValue(bean.getDbCreateUser());
                  m_dbCreatePwd.setValue(bean.getDbCreatePwd());
                  m_dbWorkUser.setValue(bean.getDbWorkUser());
                  m_dbWorkPwd.setValue(bean.getDbWorkPwd());
                  m_createDb.setValue(true);
                  m_createDb.setCaption("Create database and tables");
                  m_dropDatabase.setValue(false);
                  String origCreateConStr = bean.getDbProperty("hsqldb.constr");
                  String createConStr = bean.getDbCreateConStr();
                  if ((origCreateConStr != null) && origCreateConStr.equals(createConStr)) {
                      createConStr = "jdbc:hsqldb:file:"
                          + bean.getWebAppRfsPath()
                          + "WEB-INF"
                          + File.separatorChar
                          + "hsqldb"
                          + File.separatorChar
                          + "opencms;shutdown=false";
                  }
                  m_dbCreateConStr.setValue(createConStr);
                  break;
              case "oracle":
                  setVisible(
                      m_dbCreateUser,
                      m_dbCreatePwd,
                      m_dbWorkUser,
                      m_dbWorkPwd,
                      m_dbCreateConStr,
                      m_createDb,
                      m_createTables,
                      m_dropDatabase,
                      m_temporaryTablespace,
                      m_indexTablespace,
                      m_defaultTablespace);
                  m_dbCreateUser.setValue(bean.getDbCreateUser());
                  m_dbCreatePwd.setValue(bean.getDbCreatePwd());
                  m_dbWorkUser.setValue(bean.getDbWorkUser());
                  m_dbWorkPwd.setValue(bean.getDbWorkPwd());
                  m_dbCreateConStr.setValue(bean.getDbCreateConStr());
                  m_dbName.setValue(webapp != null ? webapp : bean.getDb());
                  m_createDb.setValue(true);
                  m_createDb.setCaption("Create user");
                  m_createTables.setValue(true);
                  m_dropDatabase.setValue(false);
                  m_temporaryTablespace.setValue(dbProp("temporaryTablespace"));
                  m_indexTablespace.setValue(dbProp("indexTablespace"));
                  m_defaultTablespace.setValue(dbProp("defaultTablespace"));
                  break;
              case "db2":
              case "as400":
                  setVisible(m_dbWorkUser, m_dbWorkPwd, m_dbCreateConStr, m_dbName, m_createTables);
                  m_setupPanel.setVisible(false);
                  m_dbWorkUser.setValue(bean.getDbWorkUser());
                  m_dbWorkPwd.setValue(bean.getDbWorkPwd());
                  m_dbCreateConStr.setValue(bean.getDbCreateConStr());
                  m_dbName.setValue(webapp != null ? webapp : bean.getDb());
                  m_createDb.setValue(false);
                  m_createTables.setValue(true);
                  m_dropDatabase.setValue(true);
                  break;
              default:
                  break;
          }
      }