org.richfaces.component

## Class AbstractAutocomplete

- java.lang.Object
- - javax.faces.component.UIComponent
  - - javax.faces.component.UIComponentBase
    - - javax.faces.component.UIOutput
      - - javax.faces.component.UIInput
        - - org.richfaces.component.AbstractAutocomplete

- All Implemented Interfaces:
    EventListener, javax.faces.component.EditableValueHolder, javax.faces.component.PartialStateHolder, javax.faces.component.StateHolder, javax.faces.component.TransientStateHolder, javax.faces.component.ValueHolder, javax.faces.event.ComponentSystemEventListener, javax.faces.event.FacesListener, javax.faces.event.SystemEventListenerHolder, AutocompleteProps, DisabledProps, EventsKeyProps, EventsMouseProps, FocusProps, StyleClassProps, StyleProps, MetaComponentEncoder, MetaComponentResolver
  Direct Known Subclasses:
    UIAutocomplete

      public abstract class AbstractAutocomplete
      extends javax.faces.component.UIInput
      implements MetaComponentResolver, MetaComponentEncoder, DisabledProps, FocusProps, EventsKeyProps, EventsMouseProps, StyleClassProps, StyleProps, AutocompleteProps

  The <rich:autocomplete> component is an auto-completing input-box with built-in Ajax capabilities. It supports client-side suggestions, browser-like selection, and customization of the look and feel.

  Author:
    Nick Belaevski, Brian Leathem

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static String` | `COMPONENT_FAMILY`
    `static String` | `COMPONENT_TYPE`
    `static String` | `ITEMS_META_COMPONENT_ID`

    - ### Fields inherited from class javax.faces.component.UIInput

      `CONVERSION_MESSAGE_ID, REQUIRED_MESSAGE_ID, UPDATE_MESSAGE_ID, VALIDATE_EMPTY_FIELDS_PARAM_NAME`

    - ### Fields inherited from class javax.faces.component.UIComponent

      `ATTRS_WITH_DECLARED_DEFAULT_VALUES, BEANINFO_KEY, bindings, COMPOSITE_COMPONENT_TYPE_KEY, COMPOSITE_FACET_NAME, CURRENT_COMPONENT, CURRENT_COMPOSITE_COMPONENT, FACETS_KEY, HONOR_CURRENT_COMPONENT_ATTRIBUTES_PARAM_NAME, VIEW_LOCATION_KEY`

    - ### Fields inherited from interface org.richfaces.component.MetaComponentResolver

      `META_COMPONENT_SEPARATOR_CHAR`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `AbstractAutocomplete()`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `encodeMetaComponent(javax.faces.context.FacesContext context, String metaComponentId)`
    `abstract String` | `getClientFilterFunction()` A javascript function used to filter the result list returned from the ajax call to the server.
    `abstract Object` | `getFetchValue()` A value to set in the target input element on a choice suggestion that isn't shown in the suggestion table.
    `abstract String` | `getInputClass()` Assigns one or more space-separated CSS class names to the input element
    `javax.faces.model.DataModel<Object>` | `getItems(javax.faces.context.FacesContext facesContext, String value)`
    `static javax.faces.model.DataModel<Object>` | `getItems(javax.faces.context.FacesContext facesContext, javax.faces.component.UIComponent component, String value)`
    `abstract String` | `getLayout()` Type of the layout encoded using nested components should be defined using layout attribute.
    `abstract String` | `getOnbeforedomupdate()` The client-side script method to be called after the ajax response comes back, but before the DOM is updated
    `abstract String` | `getOnbegin()` The client-side script method to be called before an ajax request.
    `abstract String` | `getOnchange()` Javascript code executed when this element loses focus and its value has been modified since gaining focus.
    `abstract String` | `getOncomplete()` The client-side script method to be called after the DOM is updated
    `abstract String` | `getOnlistclick()` Javascript code executed when a pointer button is clicked over the popup list element.
    `abstract String` | `getOnlistdblclick()` Javascript code executed when a pointer button is double clicked over this element.
    `abstract String` | `getOnlistkeydown()` Javascript code executed when a key is pressed down over this element.
    `abstract String` | `getOnlistkeypress()` Javascript code executed when a key is pressed and released over this element.
    `abstract String` | `getOnlistkeyup()` Javascript code executed when a key is released over this element.
    `abstract String` | `getOnlistmousedown()` Javascript code executed when a pointer button is pressed down over this element.
    `abstract String` | `getOnlistmousemove()` Javascript code executed when a pointer button is moved within this element.
    `abstract String` | `getOnlistmouseout()` Javascript code executed when a pointer button is moved away from this element.
    `abstract String` | `getOnlistmouseover()` Javascript code executed when a pointer button is moved onto this element.
    `abstract String` | `getOnlistmouseup()` Javascript code executed when a pointer button is released over this element.
    `abstract String` | `getOnselectitem()` Javascript code executed when an item is selected
    `abstract String` | `getPopupClass()` Assigns one or more space-separated CSS class names to the content of the popup suggestion element
    `abstract String` | `getSelectedItemClass()` Assigns one or more space-separated CSS class names to the selected suggestion entry
    `abstract String` | `getTokens()` Allow a user to enter multiple values separated by specific characters.
    `abstract boolean` | `isAutofill()` Causes the combo-box to fill the text field box with a matching suggestion as the user types
    `abstract boolean` | `isSelectFirst()` Boolean value indicating whether the first suggestion item is selected as the user types
    `abstract boolean` | `isShowButton()` Boolean value indicating whether to display a button to expand the popup suggestion element
    `String` | `resolveClientId(javax.faces.context.FacesContext facesContext, javax.faces.component.UIComponent contextComponent, String metaComponentId)` Resolves and returns string identifying supported meta-component or `null` if provided meta-component name is not a supported one.
    `String` | `substituteUnresolvedClientId(javax.faces.context.FacesContext facesContext, javax.faces.component.UIComponent contextComponent, String metaComponentId)` Provides replacement for unresolved meta-component names.
    `boolean` | `visitTree(javax.faces.component.visit.VisitContext context, javax.faces.component.visit.VisitCallback callback)`

    - ### Methods inherited from class javax.faces.component.UIInput

      `addValidator, addValueChangeListener, broadcast, clearInitialState, compareValues, decode, getConvertedValue, getConverterMessage, getFamily, getRequiredMessage, getSubmittedValue, getValidator, getValidatorMessage, getValidators, getValue, getValueChangeListener, getValueChangeListeners, isEmpty, isImmediate, isLocalValueSet, isRequired, isValid, markInitialState, processDecodes, processUpdates, processValidators, removeValidator, removeValueChangeListener, resetValue, restoreState, saveState, setConverterMessage, setImmediate, setLocalValueSet, setRequired, setRequiredMessage, setSubmittedValue, setValid, setValidator, setValidatorMessage, setValue, setValueChangeListener, updateModel, validate, validateValue`

    - ### Methods inherited from class javax.faces.component.UIOutput

      `getConverter, getLocalValue, setConverter`

    - ### Methods inherited from class javax.faces.component.UIComponentBase

      `addClientBehavior, addFacesListener, encodeAll, encodeBegin, encodeChildren, encodeEnd, findComponent, getAttributes, getChildCount, getChildren, getClientBehaviors, getClientId, getDefaultEventName, getEventNames, getFacesContext, getFacesListeners, getFacet, getFacetCount, getFacets, getFacetsAndChildren, getId, getParent, getPassThroughAttributes, getRenderer, getRendererType, getRendersChildren, getValueBinding, invokeOnComponent, isRendered, isTransient, processRestoreState, processSaveState, queueEvent, removeFacesListener, restoreAttachedState, saveAttachedState, setId, setParent, setRendered, setRendererType, setTransient, setValueBinding`

    - ### Methods inherited from class javax.faces.component.UIComponent

      `getClientId, getCompositeComponentParent, getContainerClientId, getCurrentComponent, getCurrentCompositeComponent, getListenersForEventClass, getNamingContainer, getPassThroughAttributes, getResourceBundleMap, getStateHelper, getStateHelper, getTransientStateHelper, getTransientStateHelper, getValueExpression, initialStateMarked, isCompositeComponent, isInView, isVisitable, popComponentFromEL, processEvent, pushComponentToEL, restoreTransientState, saveTransientState, setInView, setValueExpression, subscribeToEvent, unsubscribeFromEvent`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

    - ### Methods inherited from interface org.richfaces.component.attribute.DisabledProps

      `isDisabled`

    - ### Methods inherited from interface org.richfaces.component.attribute.FocusProps

      `getOnblur, getOnfocus, getTabindex`

    - ### Methods inherited from interface org.richfaces.component.attribute.EventsKeyProps

      `getOnkeydown, getOnkeypress, getOnkeyup`

    - ### Methods inherited from interface org.richfaces.component.attribute.EventsMouseProps

      `getOnclick, getOndblclick, getOnmousedown, getOnmousemove, getOnmouseout, getOnmouseover, getOnmouseup`

    - ### Methods inherited from interface org.richfaces.component.attribute.StyleClassProps

      `getStyleClass`

    - ### Methods inherited from interface org.richfaces.component.attribute.StyleProps

      `getStyle`

    - ### Methods inherited from interface org.richfaces.component.attribute.AutocompleteProps

      `getAutocompleteList, getAutocompleteMethod, getAutocompleteMethodWithOneParameter, getMinChars, getMode, getVar, setAutocompleteMethod, setAutocompleteMethodWithOneParameter`

    - ### Methods inherited from interface javax.faces.component.ValueHolder

      `getConverter, getLocalValue, setConverter`

- - ### Field Detail

    - #### ITEMS_META_COMPONENT_ID

          public static final String ITEMS_META_COMPONENT_ID

      See Also:
        Constant Field Values

    - #### COMPONENT_TYPE

          public static final String COMPONENT_TYPE

      See Also:
        Constant Field Values

    - #### COMPONENT_FAMILY

          public static final String COMPONENT_FAMILY

      See Also:
        Constant Field Values

  - ### Constructor Detail

    - #### AbstractAutocomplete

          public AbstractAutocomplete()

  - ### Method Detail

    - #### getFetchValue

          public abstract Object getFetchValue()

      A value to set in the target input element on a choice suggestion that isn't shown in the suggestion table. It can be used for descriptive output comments or suggestions. If not set, all text in the suggestion row is set as a value

    - #### getSelectedItemClass

          public abstract String getSelectedItemClass()

      Assigns one or more space-separated CSS class names to the selected suggestion entry

    - #### getPopupClass

          public abstract String getPopupClass()

      Assigns one or more space-separated CSS class names to the content of the popup suggestion element

    - #### getInputClass

          public abstract String getInputClass()

      Assigns one or more space-separated CSS class names to the input element

    - #### getLayout

          public abstract String getLayout()

      Type of the layout encoded using nested components should be defined using layout attribute. Possible values are:

      list
        suggestions wrapped to HTML unordered list
      div
        suggestions wrapped with just div element
      table
        suggestions are encoded as table rows, column definitions are required in this case

      Default: div

    - #### getTokens

          public abstract String getTokens()

      Allow a user to enter multiple values separated by specific characters. As the user types, a suggestion will present as normal. When they enter the specified token character, this begins a new suggestion process, and the component will then only use text entered after the token character for suggestions.

      Make sure that no character defined in tokens is part of any suggestion value. E.g. do not use space as a token if you expect to allow spaces in suggestion values.

      When tokens defined, they can be naturally separated by space character - input separated by tokens ', ' or ' ,' will be considered as it would be ',' token without any space.

    - #### isAutofill

          public abstract boolean isAutofill()

      Causes the combo-box to fill the text field box with a matching suggestion as the user types

    - #### isShowButton

          public abstract boolean isShowButton()

      Boolean value indicating whether to display a button to expand the popup suggestion element

      Default: false

    - #### isSelectFirst

          public abstract boolean isSelectFirst()

      Boolean value indicating whether the first suggestion item is selected as the user types

      Default: true

    - #### getClientFilterFunction

          public abstract String getClientFilterFunction()

      A javascript function used to filter the result list returned from the ajax call to the server. This function should have two parameters; subString(current input value considering tokens) and value (currently iterated item value) and return boolean flag which means if the value satisfies the substring passed. The function will be called for every available suggestion in order to construct a new list of suggestions.

      Default: A javascript method called startsWith

    - #### getOnselectitem

          public abstract String getOnselectitem()

      Javascript code executed when an item is selected

    - #### getOnchange

          public abstract String getOnchange()

      Javascript code executed when this element loses focus and its value has been modified since gaining focus.

    - #### getOnlistclick

          public abstract String getOnlistclick()

      Javascript code executed when a pointer button is clicked over the popup list element.

    - #### getOnlistdblclick

          public abstract String getOnlistdblclick()

      Javascript code executed when a pointer button is double clicked over this element.

    - #### getOnlistmousedown

          public abstract String getOnlistmousedown()

      Javascript code executed when a pointer button is pressed down over this element.

    - #### getOnlistmouseup

          public abstract String getOnlistmouseup()

      Javascript code executed when a pointer button is released over this element.

    - #### getOnlistmouseover

          public abstract String getOnlistmouseover()

      Javascript code executed when a pointer button is moved onto this element.

    - #### getOnlistmousemove

          public abstract String getOnlistmousemove()

      Javascript code executed when a pointer button is moved within this element.

    - #### getOnlistmouseout

          public abstract String getOnlistmouseout()

      Javascript code executed when a pointer button is moved away from this element.

    - #### getOnlistkeypress

          public abstract String getOnlistkeypress()

      Javascript code executed when a key is pressed and released over this element.

    - #### getOnlistkeydown

          public abstract String getOnlistkeydown()

      Javascript code executed when a key is pressed down over this element.

    - #### getOnlistkeyup

          public abstract String getOnlistkeyup()

      Javascript code executed when a key is released over this element.

    - #### getOnbegin

          public abstract String getOnbegin()

      The client-side script method to be called before an ajax request.

    - #### getOncomplete

          public abstract String getOncomplete()

      The client-side script method to be called after the DOM is updated

    - #### getOnbeforedomupdate

          public abstract String getOnbeforedomupdate()

      The client-side script method to be called after the ajax response comes back, but before the DOM is updated

    - #### getItems

          public javax.faces.model.DataModel<Object> getItems(javax.faces.context.FacesContext facesContext,
                                                     String value)

    - #### getItems

          public static javax.faces.model.DataModel<Object> getItems(javax.faces.context.FacesContext facesContext,
                                                     javax.faces.component.UIComponent component,
                                                     String value)

    - #### resolveClientId

          public String resolveClientId(javax.faces.context.FacesContext facesContext,
                               javax.faces.component.UIComponent contextComponent,
                               String metaComponentId)

      Description copied from interface: `MetaComponentResolver`
      Resolves and returns string identifying supported meta-component or `null` if provided meta-component name is not a supported one.
      Specified by:
        `resolveClientId` in interface `MetaComponentResolver`
      Parameters:
        `facesContext` - - current instance of `FacesContext`
        `contextComponent` - - instance of `UIComponent` that requested resolution of meta-component
        `metaComponentId` - - name of meta-component (without leading '@' sign)
      Returns:
        clientId, one of supported meta-names such as @all, @this, etc. or `null`

    - #### substituteUnresolvedClientId

          public String substituteUnresolvedClientId(javax.faces.context.FacesContext facesContext,
                                            javax.faces.component.UIComponent contextComponent,
                                            String metaComponentId)

      Description copied from interface: `MetaComponentResolver`
      Provides replacement for unresolved meta-component names. Returns identifier string for the chosen substitution or `null`
      Specified by:
        `substituteUnresolvedClientId` in interface `MetaComponentResolver`
      Parameters:
        `facesContext` - - current instance of `FacesContext`
        `contextComponent` - - instance of `UIComponent` that requested resolution of meta-component
        `metaComponentId` - - name of meta-component (without leading '@' sign)
      Returns:
        clientId, one of supported meta-names such as @all, @this, etc. or `null`

    - #### visitTree

          public boolean visitTree(javax.faces.component.visit.VisitContext context,
                          javax.faces.component.visit.VisitCallback callback)

      Overrides:
        `visitTree` in class `javax.faces.component.UIComponentBase`

    - #### encodeMetaComponent

          public void encodeMetaComponent(javax.faces.context.FacesContext context,
                                 String metaComponentId)
                                   throws IOException

      Specified by:
        `encodeMetaComponent` in interface `MetaComponentEncoder`
      Throws:
        `IOException`

Copyright © 2015 JBoss by Red Hat. All Rights Reserved.