public class Param extends UIParameter implements ParamHolder
UIParameter
to implement ValueHolder
and thus support a Converter
to convert the supplied value to string, if necessary.
You can use it the same way as <f:param>
, you only need to change f:
into
o:
to get the extra support for a Converter
by usual means via the converter
attribute of the tag, or the nested <f:converter>
tag, or just automatically if a converter is
already registered for the target class.
Also, if no value is specified, but children are present, then the encoded output of children will be returned as
value. This is useful when you want to supply JSF components or HTML as parameter of an unescaped
<h:outputFormat>
. For example,
<h:outputFormat value="#{bundle.paragraph}" escape="false"> <o:param><h:link outcome="contact" value="#{bundle.contact}" /></o:param> </h:outputFormat>
with this bundle
paragraph = Please {0} for more information. contact = contact us
will result in the link being actually encoded as output format parameter value.
Modifier and Type | Field and Description |
---|---|
static String |
COMPONENT_TYPE |
COMPONENT_FAMILY
BEANINFO_KEY, bindings, COMPOSITE_COMPONENT_TYPE_KEY, COMPOSITE_FACET_NAME, CURRENT_COMPONENT, CURRENT_COMPOSITE_COMPONENT, FACETS_KEY, VIEW_LOCATION_KEY
Constructor and Description |
---|
Param() |
Modifier and Type | Method and Description |
---|---|
void |
encodeAll(FacesContext context) |
Converter |
getConverter() |
Object |
getLocalValue()
Returns the original, unconverted value of the parameter.
|
String |
getValue()
Returns the converted value of the parameter.
|
void |
setConverter(Converter converter) |
getFamily, getName, isDisable, setDisable, setName, setValue
addClientBehavior, addFacesListener, broadcast, clearInitialState, decode, encodeBegin, encodeChildren, encodeEnd, findComponent, getAttributes, getChildCount, getChildren, getClientBehaviors, getClientId, getDefaultEventName, getEventNames, getFacesContext, getFacesListeners, getFacet, getFacetCount, getFacets, getFacetsAndChildren, getId, getParent, getRenderer, getRendererType, getRendersChildren, getValueBinding, invokeOnComponent, isRendered, isTransient, markInitialState, processDecodes, processRestoreState, processSaveState, processUpdates, processValidators, queueEvent, removeFacesListener, restoreAttachedState, restoreState, saveAttachedState, saveState, setId, setParent, setRendered, setRendererType, setTransient, setValueBinding
getClientId, getCompositeComponentParent, getContainerClientId, getCurrentComponent, getCurrentCompositeComponent, getListenersForEventClass, getNamingContainer, getResourceBundleMap, getStateHelper, getStateHelper, getValueExpression, initialStateMarked, isCompositeComponent, isInView, isVisitable, popComponentFromEL, processEvent, pushComponentToEL, setInView, setValueExpression, subscribeToEvent, unsubscribeFromEvent, visitTree
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
getName
setValue
public static final String COMPONENT_TYPE
public Converter getConverter()
getConverter
in interface ValueHolder
public void setConverter(Converter converter)
setConverter
in interface ValueHolder
public Object getLocalValue()
ParamHolder
getLocalValue
in interface ValueHolder
getLocalValue
in interface ParamHolder
public String getValue()
ParamHolder
Application.createConverter(Class)
, passing the value's class, then return the result of
Converter.getAsString(javax.faces.context.FacesContext, javax.faces.component.UIComponent, Object)
,
otherwise if the value is not null
, then return the value's Object.toString()
, else return
an empty string.getValue
in interface ValueHolder
getValue
in interface ParamHolder
getValue
in class UIParameter
null
.Converter.getAsString(javax.faces.context.FacesContext, javax.faces.component.UIComponent, Object)
public void encodeAll(FacesContext context) throws IOException
encodeAll
in class UIComponent
IOException