Initializes the start view.<p>

@param settings user settings
553118
void iniStartView(CmsUserSettings settings) {

        IndexedContainer container = getStartViewContainer("caption");
        if (container.size() > 0) {
            m_startview.setEnabled(true);
            m_startview.setContainerDataSource(container);
            m_startview.setItemCaptionPropertyId("caption");
            m_startview.setNullSelectionAllowed(false);
            m_startview.setNewItemsAllowed(false);
            if (container.getItemIds().size() > 0) {
                m_startview.select(container.getItemIds().get(0));
                if (settings != null) {
                    m_startview.select(settings.getStartView());
                }
            }
        } else {
            m_startview.setEnabled(false);
        }
    }
1364422
private void init(final Window window, final CmsAccountsApp app, final CmsUserSettings settings, boolean enabled) {

        m_userdata.initFields(m_user, enabled ? EditLevel.all : EditLevel.none);
        if (m_user != null) {
            if (CmsStringUtil.isEmptyOrWhitespaceOnly(m_user.getFirstname())
                | CmsStringUtil.isEmptyOrWhitespaceOnly(m_user.getLastname())
                | CmsStringUtil.isEmptyOrWhitespaceOnly(m_user.getEmail())) {
                m_name_was_empty = true;
            }
        }
        iniLanguage(settings);
        iniProject(settings);
        iniSite(settings);
        iniStartView(settings);

        m_site.addValueChangeListener(new ValueChangeListener() {

            private static final long serialVersionUID = 5111762655156037899L;

            public void valueChange(ValueChangeEvent event) {

                setupStartFolder(null);

            }

        });

        m_ok.addClickListener(new ClickListener() {

            private static final long serialVersionUID = -2579639520410382246L;

            public void buttonClick(ClickEvent event) {

                setupValidators();
                if (isValid()) {
                    save();
                    window.close();
                    app.reload();
                }
            }
        });

        m_next.addClickListener(new ClickListener() {

            private static final long serialVersionUID = -8584899970290349959L;

            public void buttonClick(ClickEvent event) {

                setupValidators();
                switchTab();

            }
        });

        m_cancel.addClickListener(new ClickListener() {

            private static final long serialVersionUID = 5803825104722705175L;

            public void buttonClick(ClickEvent event) {

                window.close();
            }
        });

        if (m_user == null) {
            m_role.addValueChangeListener(new ValueChangeListener() {

                private static final long serialVersionUID = 5697126133686172725L;

                public void valueChange(ValueChangeEvent event) {

                    iniSite(settings);
                    iniStartView(settings);
                }
            });
            m_group.addValueChangeListener(new ValueChangeListener() {

                private static final long serialVersionUID = 1512940002751242094L;

                public void valueChange(ValueChangeEvent event) {

                    iniStartView(settings);
                    iniSite(settings);
                }

            });
        }

        m_site.addValueChangeListener(new ValueChangeListener() {

            private static final long serialVersionUID = -169973382455098800L;

            public void valueChange(ValueChangeEvent event) {

                m_startfolder.setCmsObject(getCmsObjectWithSite((String)m_site.getValue()));

            }

        });

        m_generateButton.addClickListener(new Button.ClickListener() {

            private static final long serialVersionUID = 4128513094772586752L;

            public void buttonClick(ClickEvent event) {

                final Window windowDialog = CmsBasicDialog.prepareWindow(CmsBasicDialog.DialogWidth.content);
                windowDialog.setCaption(
                    CmsVaadinUtils.getMessageText(Messages.GUI_USERMANAGEMENT_GEN_PASSWORD_CAPTION_0));
                CmsGeneratePasswordDialog dialog = new CmsGeneratePasswordDialog(
                    CmsUserEditDialog.this,
                    new Runnable() {

                        public void run() {

                            windowDialog.close();

                        }
                    });
                windowDialog.setContent(dialog);
                A_CmsUI.get().addWindow(windowDialog);
            }
        });
    }
126645
private void initialize() {
        this.setTitle(Constant.messages.getString("history.managetags.title"));
        this.setContentPane(getJPanel());
        if (Model.getSingleton().getOptionsParam().getViewParam().getWmUiHandlingOption() == 0) {
        	this.setSize(panelWidth, panelHeight);
        }
        this.addWindowListener(new java.awt.event.WindowAdapter() {   
        	@Override
        	public void windowOpened(java.awt.event.WindowEvent e) {    
        	} 

        	@Override
        	public void windowClosing(java.awt.event.WindowEvent e) {
        	}
        });

		pack();
	}
533904
void iniSite(CmsUserSettings settings) {

        List<CmsSite> sitesList = OpenCms.getSiteManager().getAvailableSites(m_cms, false, false, m_ou.getValue());

        IndexedContainer container = new IndexedContainer();
        container.addContainerProperty("caption", String.class, "");
        CmsSite firstNoRootSite = null;
        for (CmsSite site : sitesList) {
            if (CmsStringUtil.isEmptyOrWhitespaceOnly(site.getSiteRoot())) {
                if (hasRole(CmsRole.VFS_MANAGER)
                    | ((m_user == null)
                        & m_group.getValue().equals(OpenCms.getDefaultUsers().getGroupAdministrators()))) {
                    Item item = container.addItem(site.getSiteRoot());
                    item.getItemProperty("caption").setValue(site.getTitle());
                }
            } else {
                if (firstNoRootSite == null) {
                    firstNoRootSite = site;
                }
                Item item = container.addItem(site.getSiteRoot());
                item.getItemProperty("caption").setValue(site.getTitle());
            }
        }
        if (container.size() == 0) {
            if (!container.containsId(A_CmsUI.getCmsObject().getRequestContext().getSiteRoot())) {
                Item defaultItem = container.addItem(A_CmsUI.getCmsObject().getRequestContext().getSiteRoot());
                defaultItem.getItemProperty("caption").setValue(
                    A_CmsUI.getCmsObject().getRequestContext().getSiteRoot());
            }
            m_visSites = false;
        }
        m_site.setContainerDataSource(container);
        m_site.setItemCaptionPropertyId("caption");
        m_site.setNewItemsAllowed(false);
        m_site.setNullSelectionAllowed(false);
        if (settings != null) {
            if (settings.getStartSite().length() >= 1) {
                m_site.select(settings.getStartSite().substring(0, settings.getStartSite().length() - 1));
            } else {
                LOG.error("The start site is unvalid configured");
            }
        } else {

            if (firstNoRootSite != null) {
                m_site.select(firstNoRootSite.getSiteRoot());
            } else {
                m_site.select(container.getItemIds().get(0));
            }
        }
    }
910504
private void initMetaMappings() {

        if (m_metaMappings == null) {
            m_metaMappings = new HashMap<String, MetaMapping>();
            try {
                initPage();
                CmsMacroResolver resolver = new CmsMacroResolver();
                resolver.setKeepEmptyMacros(true);
                resolver.setCmsObject(m_cms);
                resolver.setMessages(OpenCms.getWorkplaceManager().getMessages(getLocale()));
                CmsResourceFilter filter = getIsEditMode()
                ? CmsResourceFilter.IGNORE_EXPIRATION
                : CmsResourceFilter.DEFAULT;
                for (CmsContainerBean container : m_page.getContainers().values()) {
                    for (CmsContainerElementBean element : container.getElements()) {
                        String settingsKey = CmsFormatterConfig.getSettingsKeyForContainer(container.getName());
                        String formatterConfigId = element.getSettings() != null
                        ? element.getSettings().get(settingsKey)
                        : null;
                        I_CmsFormatterBean formatterBean = null;
                        if (CmsUUID.isValidUUID(formatterConfigId)) {
                            formatterBean = OpenCms.getADEManager().getCachedFormatters(
                                m_cms.getRequestContext().getCurrentProject().isOnlineProject()).getFormatters().get(
                                    new CmsUUID(formatterConfigId));
                        }
                        if ((formatterBean != null)
                            && formatterBean.useMetaMappingsForNormalElements()
                            && m_cms.existsResource(element.getId(), filter)) {
                            addMappingsForFormatter(formatterBean, element.getId(), resolver, false);
                        }

                    }
                }
                if (getDetailContentId() != null) {
                    try {
                        CmsResource detailContent = m_cms.readResource(
                            getDetailContentId(),
                            CmsResourceFilter.ignoreExpirationOffline(m_cms));
                        CmsFormatterConfiguration config = OpenCms.getADEManager().lookupConfiguration(
                            m_cms,
                            m_cms.getRequestContext().getRootUri()).getFormatters(m_cms, detailContent);
                        for (I_CmsFormatterBean formatter : config.getDetailFormatters()) {
                            addMappingsForFormatter(formatter, getDetailContentId(), resolver, true);
                        }
                    } catch (CmsException e) {
                        LOG.error(
                            Messages.get().getBundle().key(
                                Messages.ERR_READING_REQUIRED_RESOURCE_1,
                                getDetailContentId()),
                            e);
                    }
                }
            } catch (Exception e) {
                LOG.error(e.getLocalizedMessage(), e);
            }
        }
    }
199766
protected void initSettingsObject() {

        Object o;

        if (CmsStringUtil.isEmpty(getParamAction())) {
            o = new CmsVfsImportExportHandler();
        } else {
            // this is not the initial call, get the job object from session
            o = getDialogObject();
        }

        if (!(o instanceof CmsElementChangeLocaleSettings)) {
            // create a new export handler object
            m_settings = new CmsElementChangeLocaleSettings();
        } else {
            // reuse export handler object stored in session
            m_settings = (CmsElementChangeLocaleSettings)o;
        }

    }
609471
protected void init(boolean showAll) {

        m_menu = new CmsContextMenu();
        m_menu.setAsTableContextMenu(this);

        m_container = new IndexedContainer();

        for (TableProperty prop : TableProperty.values()) {
            m_container.addContainerProperty(prop, prop.getType(), prop.getDefault());
            setColumnHeader(prop, prop.getName());
        }
        m_app.addUserContainerProperties(m_container);
        setContainerDataSource(m_container);
        setItemIconPropertyId(TableProperty.Icon);
        setRowHeaderMode(RowHeaderMode.ICON_ONLY);

        setColumnWidth(null, 40);
        setColumnWidth(TableProperty.STATUS, 100);
        setSelectable(true);
        setMultiSelect(true);

        setVisibleColumns(TableProperty.Name, TableProperty.OU);

        fillContainer(showAll);

        addItemClickListener(new ItemClickListener() {

            private static final long serialVersionUID = 4807195510202231174L;

            @SuppressWarnings("unchecked")
            public void itemClick(ItemClickEvent event) {

                changeValueIfNotMultiSelect(event.getItemId());

                if (event.getButton().equals(MouseButton.RIGHT) || (event.getPropertyId() == null)) {
                    Set<String> userIds = new HashSet<String>();
                    for (CmsUser user : (Set<CmsUser>)getValue()) {
                        userIds.add(user.getId().getStringValue());
                    }

                    m_menu.setEntries(getMenuEntries(), userIds);
                    m_menu.openForTable(event, event.getItemId(), event.getPropertyId(), CmsUserTable.this);
                } else if (event.getButton().equals(MouseButton.LEFT)
                    && TableProperty.Name.equals(event.getPropertyId())) {
                    CmsUser user = ((Set<CmsUser>)getValue()).iterator().next();
                    try {
                        openInfoDialog(user.getId());
                    } catch (CmsException e) {
                        LOG.error("Error on opening user info dialog", e);
                    }
                }

            }

        });
        setCellStyleGenerator(new CellStyleGenerator() {

            private static final long serialVersionUID = 4685652851810828147L;

            public String getStyle(Table source, Object itemId, Object propertyId) {

                if (TableProperty.STATUS.equals(propertyId)) {
                    return getStatusStyleForItem(source.getItem(itemId), (CmsUser)itemId);

                }
                String css = " ";

                if (((Boolean)(source.getItem(itemId).getItemProperty(
                    TableProperty.FROMOTHEROU).getValue())).booleanValue()) {
                    css += OpenCmsTheme.EXPIRED;
                }

                if (TableProperty.Name.equals(propertyId)) {
                    css += " " + OpenCmsTheme.HOVER_COLUMN;
                }

                if (((Boolean)source.getItem(itemId).getItemProperty(
                    TableProperty.INDIRECT).getValue()).booleanValue()) {
                    return css + " " + OpenCmsTheme.TABLE_CELL_DISABLED;
                }
                return css.length() == 1 ? null : css;
            }

            private String getStatusStyleForItem(Item item, CmsUser user) {

                if (((Boolean)item.getItemProperty(TableProperty.DISABLED).getValue()).booleanValue()) {
                    return OpenCmsTheme.TABLE_COLUMN_BOX_GRAY;
                }

                if (((Boolean)item.getItemProperty(TableProperty.NEWUSER).getValue()).booleanValue()) {
                    return OpenCmsTheme.TABLE_COLUMN_BOX_BLUE;
                }

                if (OpenCms.getLoginManager().isUserTempDisabled(user.getName())) {
                    return OpenCmsTheme.TABLE_COLUMN_BOX_RED;
                }

                if (isUserPasswordReset(user)) {
                    return OpenCmsTheme.TABLE_COLUMN_BOX_ORANGE;
                }

                return OpenCmsTheme.TABLE_COLUMN_BOX_GREEN;
            }
        });
        addGeneratedColumn(TableProperty.STATUS, new ColumnGenerator() {

            private static final long serialVersionUID = -2144476865774782965L;

            public Object generateCell(Table source, Object itemId, Object columnId) {

                return getStatus(
                    (CmsUser)itemId,
                    ((Boolean)source.getItem(itemId).getItemProperty(TableProperty.DISABLED).getValue()).booleanValue(),
                    ((Boolean)source.getItem(itemId).getItemProperty(TableProperty.NEWUSER).getValue()).booleanValue());

            }

        });
        addGeneratedColumn(TableProperty.LastLogin, new ColumnGenerator() {

            private static final long serialVersionUID = -6781906011584975559L;

            public Object generateCell(Table source, Object itemId, Object columnId) {

                long lastLogin = ((Long)source.getItem(itemId).getItemProperty(
                    TableProperty.LastLogin).getValue()).longValue();
                return lastLogin == 0L
                ? CmsVaadinUtils.getMessageText(Messages.GUI_USERMANAGEMENT_USER_NEVER_LOGGED_IN_0)
                : CmsDateUtil.getDateTime(new Date(lastLogin), DateFormat.SHORT, A_CmsUI.get().getLocale());

            }

        });

        addGeneratedColumn(TableProperty.Created, new ColumnGenerator() {

            private static final long serialVersionUID = -6781906011584975559L;

            public Object generateCell(Table source, Object itemId, Object columnId) {

                long created = ((Long)source.getItem(itemId).getItemProperty(
                    TableProperty.Created).getValue()).longValue();
                return created == 0L
                ? ""
                : CmsDateUtil.getDateTime(new Date(created), DateFormat.SHORT, A_CmsUI.get().getLocale());

            }

        });

        setItemDescriptionGenerator(new ItemDescriptionGenerator() {

            private static final long serialVersionUID = 7367011213487089661L;

            public String generateDescription(Component source, Object itemId, Object propertyId) {

                if (TableProperty.STATUS.equals(propertyId)) {

                    return getStatusHelp(
                        (CmsUser)itemId,
                        ((Boolean)((Table)source).getItem(itemId).getItemProperty(
                            TableProperty.DISABLED).getValue()).booleanValue(),
                        ((Boolean)((Table)source).getItem(itemId).getItemProperty(
                            TableProperty.NEWUSER).getValue()).booleanValue());
                }
                return null;
            }
        });
        setVisibleColumns(
            TableProperty.STATUS,
            TableProperty.Name,
            TableProperty.FullName,
            TableProperty.OU,
            TableProperty.LastLogin,
            TableProperty.Created);
    }
1285348
@Override
	protected void initFromSettings(Settings settings)
	{
		super.initFromSettings(settings);
		
		this.subscriberFailurePolicy  = settings.getIntProperty("subscriberFailurePolicy",FFMQSubscriberPolicy.SUBSCRIBER_POLICY_LOG);
		this.subscriberOverflowPolicy = settings.getIntProperty("subscriberOverflowPolicy",FFMQSubscriberPolicy.SUBSCRIBER_POLICY_LOG);
		
		String rawPartitionsKeysToIndex = settings.getStringProperty("partitionsKeysToIndex");
		if (rawPartitionsKeysToIndex != null)
		{
			StringTokenizer st = new StringTokenizer(rawPartitionsKeysToIndex, ", ");
			this.partitionsKeysToIndex = new String[st.countTokens()];
			int pos = 0;
			while (st.hasMoreTokens())
				this.partitionsKeysToIndex[pos++] = st.nextToken();
		}
	}
308040
public void initializeWidgets(CmsPopup dialog) {

        // creates tabs, etc. if necessary
        setupFieldContainer();
        addSpecialFields();
        // create fields and add them to the correct location
        buildFields();
        m_form.setValidatorClass("org.opencms.gwt.CmsDefaultFormValidator");
        m_form.render();
        if ((dialog != null) && (dialog.getWidth() > 20)) {
            getForm().getWidget().truncate("property_editing", dialog.getWidth() - 20);
        }
    }
455473
protected void initUserObject() {

        if (m_fieldconfiguration == null) {
            try {
                m_fieldconfiguration = m_searchManager.getFieldConfiguration(getParamFieldconfiguration());
                if (m_fieldconfiguration == null) {
                    m_fieldconfiguration = new CmsLuceneFieldConfiguration();
                }
            } catch (Exception e) {
                m_fieldconfiguration = new CmsLuceneFieldConfiguration();
            }
        }
    }
379835
public void setStartView(String userName, String view) throws CmsException {

        try {

            CmsUser user = m_cms.readUser(userName);
            user.getAdditionalInfo().put(
                CmsUserSettings.PREFERENCES
                    + CmsWorkplaceConfiguration.N_WORKPLACESTARTUPSETTINGS
                    + CmsWorkplaceConfiguration.N_WORKPLACEVIEW,
                view);
            m_cms.writeUser(user);
        } catch (CmsException e) {
            e.printStackTrace(System.err);
            throw e;
        }
    }
1278572
public void setDefaultUserSettings(CmsDefaultUserSettings defaultUserSettings) {

        m_defaultUserSettings = defaultUserSettings;

        if (CmsLog.INIT.isInfoEnabled()) {
            CmsLog.INIT.info(
                Messages.get().getBundle().key(
                    Messages.INIT_DEFAULT_USER_SETTINGS_1,
                    m_defaultUserSettings.getClass().getName()));
        }
    }
171836
protected void initUserObject() {

        if (m_fieldconfiguration == null) {
            try {
                m_fieldconfiguration = m_searchManager.getFieldConfiguration(
                    getParamFieldconfiguration());
                if (m_fieldconfiguration == null) {
                    m_fieldconfiguration = new CmsLuceneFieldConfiguration();
                }
            } catch (Exception e) {
                m_fieldconfiguration = new CmsLuceneFieldConfiguration();
            }
        }

        if (m_field == null) {
            try {
                Iterator<CmsSearchField> itFields = m_fieldconfiguration.getFields().iterator();
                while (itFields.hasNext()) {
                    CmsLuceneField curField = (CmsLuceneField)itFields.next();
                    if (curField.getName().equals(getParamField())) {
                        m_field = curField;
                        break;
                    }
                }
                if (m_field == null) {
                    m_field = new CmsLuceneField();
                }
            } catch (Exception e) {
                m_field = new CmsLuceneField();
            }
        }
    }
284021
private void initControlAndPostViewInit() throws Exception {
        Control.initSingletonWithView(getControlOverrides());

        final Control control = Control.getSingleton();
        final View view = View.getSingleton();

        EventQueue.invokeAndWait(new Runnable() {

            @Override
            public void run() {
                view.postInit();
                view.getMainFrame().setVisible(true);

                boolean createNewSession = true;
                if (getArgs().isEnabled(CommandLine.SESSION) && getArgs().isEnabled(CommandLine.NEW_SESSION)) {
                    view.showWarningDialog(
                            Constant.messages.getString(
                                    "start.gui.cmdline.invalid.session.options",
                                    CommandLine.SESSION,
                                    CommandLine.NEW_SESSION,
                                    Constant.getZapHome()));

                } else if (getArgs().isEnabled(CommandLine.SESSION)) {
                    Path sessionPath = SessionUtils.getSessionPath(getArgs().getArgument(CommandLine.SESSION));
                    if (!Files.exists(sessionPath)) {
                        view.showWarningDialog(
                                Constant.messages.getString("start.gui.cmdline.session.does.not.exist", Constant.getZapHome()));

                    } else {
                        createNewSession = !control.getMenuFileControl().openSession(sessionPath.toAbsolutePath().toString());
                    }

                } else if (getArgs().isEnabled(CommandLine.NEW_SESSION)) {
                    Path sessionPath = SessionUtils.getSessionPath(getArgs().getArgument(CommandLine.NEW_SESSION));
                    if (Files.exists(sessionPath)) {
                        view.showWarningDialog(
                                Constant.messages
                                        .getString("start.gui.cmdline.newsession.already.exist", Constant.getZapHome()));

                    } else {
                        createNewSession = !control.getMenuFileControl().newSession(sessionPath.toAbsolutePath().toString());
                    }
                }
                view.hideSplashScreen();

                if (createNewSession) {
                    try {
                        control.getMenuFileControl().newSession(false);
                    } catch (Exception e) {
                        logger.error(e.getMessage(), e);
                        View.getSingleton().showWarningDialog(Constant.messages.getString("menu.file.newSession.error"));
                    }
                }

            }
        });

        try {
            // Allow extensions to pick up command line args in GUI mode
            control.getExtensionLoader().hookCommandLineListener(getArgs());
            control.runCommandLine();

        } catch (final Exception e) {
            logger.error(e.getMessage(), e);
            EventQueue.invokeLater(new Runnable() {

                @Override
                public void run() {
                    view.showWarningDialog(e.getMessage());
                }
            });
        }
    }
770940
private void init(final boolean firstTime) {
        try {
            initModel();
            setupLookAndFeel();
        } catch (Exception e) {
            setupLookAndFeel();
            if (e instanceof FileNotFoundException) {
                JOptionPane.showMessageDialog(
                        null,
                        Constant.messages.getString("start.db.error"),
                        Constant.messages.getString("start.title.error"),
                        JOptionPane.ERROR_MESSAGE);
            }
            logger.fatal("Failed to initialise: " + e.getMessage(), e);
            System.err.println(e.getMessage());
            System.exit(1);
        }

        OptionsParam options = Model.getSingleton().getOptionsParam();
        OptionsParamView viewParam = options.getViewParam();

        for (FontUtils.FontType fontType: FontUtils.FontType.values()) {
            FontUtils.setDefaultFont(
                fontType,
                viewParam.getFontName(fontType),
                viewParam.getFontSize(fontType));
        }

        setupLocale(options);

        if (viewParam.isUseSystemsLocaleForFormat()) {
            Locale.setDefault(Locale.Category.FORMAT, Constant.getSystemsLocale());
        }

        View.getSingleton().showSplashScreen();

        promptForProxyDetailsIfNeeded(options);

        Thread bootstrap = new Thread(new Runnable() {

            @Override
            public void run() {
                try {
                    initControlAndPostViewInit();

                } catch (Throwable e) {
                    if (!Constant.isDevMode()) {
                        ErrorInfo errorInfo = new ErrorInfo(
                                Constant.messages.getString("start.gui.dialog.fatal.error.title"),
                                Constant.messages.getString("start.gui.dialog.fatal.error.message"),
                                null,
                                null,
                                e,
                                null,
                                null);
                        JXErrorPane errorPane = new JXErrorPane();
                        errorPane.setErrorInfo(errorInfo);
                        JXErrorPane.showDialog(View.getSingleton().getSplashScreen(), errorPane);
                    }
                    View.getSingleton().hideSplashScreen();

                    logger.fatal("Failed to initialise GUI: ", e);

                    // We must exit otherwise EDT would keep ZAP running.
                    System.exit(1);
                }

                warnAddOnsAndExtensionsNoLongerRunnable();

                if (firstTime) {
                    // Disabled for now - we have too many popups occurring when you
                    // first start up
                    // be nice to have a clean start up wizard...
                    // ExtensionHelp.showHelp();

                } else {
                    // Don't auto check for updates the first time, no chance of any
                    // proxy having been set
                    final ExtensionAutoUpdate eau = Control.getSingleton()
                            .getExtensionLoader().getExtension(ExtensionAutoUpdate.class);
                    if (eau != null) {
                        eau.alertIfNewVersions();
                    }
                }

            }
        });
        bootstrap.setName("ZAP-BootstrapGUI");
        bootstrap.setDaemon(false);
        bootstrap.start();
    }
1218475
private void initializeButtons() {
        setPositiveButton(android.R.string.ok, createRemovePreferenceHeaderClickListener());
        setNegativeButton(android.R.string.cancel, null);
    }
847161
protected void initUserObject() {

        if (m_fieldconfiguration == null) {
            try {
                m_fieldconfiguration = m_searchManager.getFieldConfiguration(getParamFieldconfiguration());
                if (m_fieldconfiguration == null) {
                    m_fieldconfiguration = new CmsLuceneFieldConfiguration();
                }
            } catch (Exception e) {
                m_fieldconfiguration = new CmsLuceneFieldConfiguration();
            }
        }

        if (m_field == null) {
            try {
                Iterator<CmsSearchField> itFields = m_fieldconfiguration.getFields().iterator();
                while (itFields.hasNext()) {
                    CmsSearchField curField = itFields.next();
                    if (curField.getName().equals(getParamField())) {
                        m_field = curField;
                        break;
                    }
                }
                if (m_field == null) {
                    m_field = new CmsLuceneField();
                }
            } catch (Exception e) {
                m_field = new CmsLuceneField();
            }
        }
        if (m_mapping == null) {
            try {
                Iterator<I_CmsSearchFieldMapping> itMappings = m_field.getMappings().iterator();
                while (itMappings.hasNext()) {
                    I_CmsSearchFieldMapping curMapping = itMappings.next();
                    if (curMapping.getType().toString().equals(getParamType())
                        && (((curMapping.getParam() == null) && getParamParam().equals("-"))
                            || (curMapping.getParam().equals(getParamParam())))) {
                        m_mapping = curMapping;
                        break;
                    }
                }
                if (m_mapping == null) {
                    m_mapping = new CmsSearchFieldMapping(true);
                }
            } catch (Exception e) {
                m_mapping = new CmsSearchFieldMapping(true);
            }
        }
    }