ID | Chapter | Section | Description | Required | Dependency | Implementation Specific | Defined by | Status | Testable |
JSF:SPEC:1 | 2 | 2.1 |
The JSF implementation must perform the following tasks during
the Restore View phase of the request processing lifecycle:
| true |
| false | technology | active | true |
JSF:SPEC:1.1 | 2 | 2.1 |
Examine the FacesContext instance for the current
request. If it already contains a UIViewRoot:
| true |
| false | technology | active | true |
JSF:SPEC:1.1.1 | 2 | 2.1 |
Set the locale on the UIViewRoot to the value
returned by getRequestLocale() method on the
ExternalContext for this request
| true |
| false | technology | active | true |
JSF:SPEC:1.1.2 | 2 | 2.1 |
For each component in the component tree,
determine if a ValueExpression for binding is
present. If so, call the setValue() method on
this ValueExpression, passing the component
instance on which it was found.
| true |
| false | technology | active | true |
JSF:SPEC:1.1.3 | 2 | 2.1 |
Take no further action during this phase, and
return.
| true |
| false | technology | active | true |
JSF:SPEC:1.2 | 2 | 2.1 |
Derive the view identifier that corresponds to this
request, as follows:
| true |
| false | technology | active | true |
JSF:SPEC:1.2.1 | 2 | 2.1 |
If prefix mapping (such as /faces/*) is
used for FacesServlet, the viewId is set from
the extra path information of the request
URI.
| true |
| false | technology | active | true |
JSF:SPEC:1.2.2 | 2 | 2.1 |
If suffix mapping (such as *.faces) is used for
FacesServlet, the viewId is set from the servlet
path information of the request URI, after
replacing the suffix with the value of the
context initialization parameter named by the
symbolic constant
ViewHandler.DEFAULT_SUFFIX_PARAM_NAME (if no
such context initialization parameter is
present, use the value of the symbolic constant
ViewHandler.DEFAULT_SUFIX as the replacement
suffix).
| true |
| false | technology | active | true |
JSF:SPEC:1.2.3 | 2 | 2.1 |
If no view identifier can be derived, throw an
exception.
| true |
| false | technology | active | true |
JSF:SPEC:1.3 | 2 | 2.1 |
Determine if this request is a postback or initial
request by executing the following algorithm. Find the
render-kit-id for the current request by calling
calculateRenderKitId() on the Application's ViewHandler.
Get the RenderKit's ResponseStateManager and call its
isPostback() method, passin gthe current FacesContext
| true |
| false | technology | active | true |
JSF:SPEC:1.4 | 2 | 2.1 |
A request that is a non-postback request must call
FacesContext.renderResponse() to cause intervening
phases to be skipped.
| true |
| false | technology | active | true |
JSF:SPEC:1.5 | 2 | 2.1 |
If the request is a postback, call
ViewHandler.restoreView() passing the FacesCOntext
isntance for the current request and the derived view
identifier, and returning a UIViewRoot for the restored
view. If the return from ViewHandler.restoreView() is
null, throw a FacesException with an appropriate error
message.
| true |
| false | technology | active | true |
JSF:SPEC:1.5.1 | 2 | 2.1 |
For each component in the component tree,
determine if a ValueExpression for binding is
present. If so, call the setValeu() method on
this ValueExpression, passing the component
instance on which it was found. Do this in a
parent-first fashion, calling setValue() method
and then traversing the children.
| true |
| false | technology | active | true |
JSF:SPEC:1.6 | 2 | 2.1 |
If the request is a non-postback, call
ViewHandler.createView(), passing the FacesContext
instance for the current request and the derived view
identifier.
| true |
| false | technology | active | true |
JSF:SPEC:1.7 | 2 | 2.1 |
Store the restored or created UIViewRoot in the
FacesContext
| true |
| false | technology | active | true |
JSF:SPEC:2 | 2 | 2.2 |
During the Apply Request Values phase, the JSF implementation
must call the processDecodes() method of the UIViewRoot of the
component tree.
| true |
| false | technology | active | true |
JSF:SPEC:3 | 2 | 2.2 |
During the decoding of request values, some components perform
special processing:
| true |
| false | technology | active | true |
JSF:SPEC:3.1 | 2 | 2.2 |
Components that implement ActionSource, which recognize
that they were activated, will queue an ActionEvent.
| true |
| false | technology | active | true |
JSF:SPEC:3.1.1 | 2 | 2.2 |
The event will be delivered at the end of Apply
Request Values phase if the immediate property
is true
| true |
| false | technology | active | true |
JSF:SPEC:3.1.2 | 2 | 2.2 |
The event will be delivered at the end of Invoke
Application phase if the immediate property is
false
| true |
| false | technology | active | true |
JSF:SPEC:3.2 | 2 | 2.2 |
Components that implement EditableValueHolder, and whose
immediate property is set to true, will cause the
conversion and validation processing that normally
happens during Process Validations phase to occur during
Apply Requst Values phase instead.
| true |
| false | technology | active | true |
JSF:SPEC:4 | 2 | 2.2 |
If any of the decode() methods that were invoked, or an event
listener that processed a queued event, called
responseComplete() on the FacesContext instance for the current
request, clear the remaining events from the event queue and
terminate the lifecycle processing of the current request.
| true |
| false | technology | active | true |
JSF:SPEC:5 | 2 | 2.2 |
If any of the decode() methods that were invoked, or an event
listener that processed a queued event, called renderResponse()
on the FacesContext instance for the current request, clear the
remaining events from the event queue and terminate the
lifecycle processing of the current request.
| true |
| false | technology | active | true |
JSF:SPEC:6 | 2 | 2.2 |
If any of the decode() methods that were invoked, or an event
listener that processed a queued event, did not call
responseComplete() or renderResponse() on the FacesContext
instance for the current request, the implementation must
proceed to the Process Validations phase.
| true |
| false | technology | active | true |
JSF:SPEC:7 | 2 | 2.3 |
During the Process Validations phase of the request processing
lifecycle, the JSF implementation must call the
processValidators() method of the UIViewRoot of the tree.
| true |
| false | technology | active | true |
JSF:SPEC:8 | 2 | 2.3 |
If any of the validate() methods that were invoked, or an event
listener that processed a queued event, called renderResponse()
on the FacesContext instance for the current request, clear the
remaining events from the event queue and transfer control to
the Render Response phase of the request processing lifecycle.
Otherwise, control must proceed to the Update Model Values
phase.
| true |
| false | technology | active | true |
JSF:SPEC:9 | 2 | 2.4 |
During the Update Model Values phase, the JSF implementation
must call the processUpdates() method of the UIViewRoot
component of the tree.
| true |
| false | technology | active | true |
JSF:SPEC:10 | 2 | 2.4 |
If any of the updateModel() methods that was invoked,
or an event listener that processed a queued event, called
renderResponse() on the FacesContext instance for the current
request, clear the remaining events from the event queue and
transfer control to the Render Response phase of the request
processing lifecycle. Otherwise, control must proceed to the
Invoke Application phase.
| true |
| false | technology | active | true |
JSF:SPEC:11 | 2 | 2.5 |
The implementation must ensure that the processApplication()
method of the UIViewRoot instance is called.
| true |
| false | technology | active | true |
JSF:SPEC:11.1 | 2 | 2.5 |
The default behavior of this method will be to broadcast
any queued events that specify a phase identifier of
PhaseId.INVOKE_APPLICATION.
| true |
| false | technology | active | true |
JSF:SPEC:12 | 2 | 2.6 |
During the Render Response phase All JSF implementations
must conform to the following requirements.
| true |
| false | technology | active | true |
JSF:SPEC:12.1 | 2 | 2.6 |
JSF implementations must provide a default ViewHandler
implementation that performs a
RequestDispatcher.forward() call to a web application
resource whose context-relative path is equal to the
view identifier of the component tree
| true |
| false | technology | active | true |
JSF:SPEC:12.2 | 2 | 2.6 |
During the rendering process, additional components may
be added to the component tree based on information
available to the ViewHandler implementation. However,
before adding a new component, the ViewHandler
implementation must first check for the existence of the
corresponding component in the component tree. If the
component already exists (perhaps because a previous
phase has pre-created one or more components), the
existing component’s properties and attributes must be
utilized.
| true |
| false | technology | active | true |
JSF:SPEC:12.3 | 2 | 2.6 |
Under no circumstances should a component be selected
for rendering when its parent component, or any of its
ancestors in the component tree, has its rendersChildren
property set to true. In such cases, the parent or
ancestor component must render the content of this child
component when the parent or ancestor was selected.
| true |
| false | technology | active | true |
JSF:SPEC:13 | 2 | 3 |
For each queued event, the broadcast() method of the source
UIComponent must be called to broadcast the event to all event
listeners who have registered an interest, on this source
component for events of the specified type, after which the
event is removed from the event queue.
| true |
| false | technology | active | true |
JSF:SPEC:14 | 2 | 3 |
It is also possible for event listeners to cause additional
events to be enqueued for processing during the current phase
of the request processing lifecycle. Such events must be
broadcast in the order they were enqueued, after all originally
queued events have been broadcast, before the lifecycle
management method returns.
| true |
| false | technology | active | true |
JSF:SPEC:15 | 2 | 4.2.1 |
The UIViewRoot instance returned by the createView() method must
minimally contain a single UIViewRoot provided by the JSF
implementation, which must encapsulate any
implementation-specific component management that is required.
| true |
| false | technology | active | true |
JSF:SPEC:16 | 2 | 4.2.1 |
The caller of ViewHandler.createView() must cause the
FacesContext to be populated with the new UIViewRoot.
| true |
| false | technology | active | true |
JSF:SPEC:17 | 2 | 4.2.2 |
The default ViewHandler must call calculateRenderKitId() on
itself and set the result into the UIViewRoot’s renderKitId
property.
| true |
| false | technology | active | true |
JSF:SPEC:18 | 2 | 4.2.4 |
Once the view has been created and configured, the FacesContext
instance for this request must be made aware of it by calling
setViewRoot().
| true |
| false | technology | active | true |
JSF:SPEC:19 | 2 | 5.2.1 |
The create ViewHandler’s createView() method must cause the
active Locale to be determined by looking at the user’s
preferences combined with the application’s stated supported
locales.
| true |
| false | technology | active | true |
JSF:SPEC:20 | 2 | 5.2.2 |
At the beginning of the render-response phase, the ViewHandler
must ensure that the response Locale is set to be that of the
UIViewRoot, for example by calling ServletResponse.setLocale()
when running in the servlet environment.
| true |
| false | technology | active | true |
JSF:SPEC:21 | 2 | 5.2.2 |
At the end of the render-response phase, the ViewHandler must
store the response character encoding used by the underlying
response object (e.g., the servlet or portlet response) in the
session (if and only if a session already exists) under a well
known, implementation-dependent key
| true |
| false | technology | active | true |
JSF:SPEC:21.1 | 2 | 5.2.2 |
On a subsequent postback, before any of the
ExternalContext methods for accessing request
parameters are invoked, the ViewHandler must examine the
Content-Type header to read the charset attribute and
use its value to set it as the request encoding for the
underlying request object. If the Content-Type header
doesn't contain a charset attribute, the encoding
previously stored in the session (if and only if a
session already exists), must be used to set the
encoding for the underlying request object.
| true |
| false | technology | active | true |
JSF:SPEC:21.2 | 2 | 5.2.2 |
If no character encoding is found, the request encoding
must be left unmodified.
| true |
| false | technology | active | true |
JSF:SPEC:22 | 2 | 5.2.4 |
A JSF implementation must provide a javax.faces.Messages
ResourceBundle containing all of the necessary keys for the
standard messages.
| true |
| false | technology | active | true |
JSF:SPEC:22.1 | 2 | 5.2.4 |
javax.faces.component.UIInput.CONVERSION --
{0}: Conversion error occurred
| true |
| false | technology | active | true |
JSF:SPEC:22.2 | 2 | 5.2.4 |
javax.faces.component.UIInput.REQUIRED --
{0}: Validation Error: Value is required
| true |
| false | technology | active | true |
JSF:SPEC:22.3 | 2 | 5.2.4 |
javax.faces.component.UIInput.UPDATE --
{0}: An error occurred when processing your submitted
information
| true |
| false | technology | active | true |
JSF:SPEC:22.4 | 2 | 5.2.4 |
javax.faces.component.UISelectOne.INVALID --
{0}: Validation Error: Value is not valid
| true |
| false | technology | active | true |
JSF:SPEC:22.5 | 2 | 5.2.4 |
javax.faces.component.UISelectMany.INVALID --
{0}: Validation Error: Value is not valid
| true |
| false | technology | active | true |
JSF:SPEC:22.6 | 2 | 5.2.4 |
javax.faces.converter.BigDecimalConverter.DECIMAL={2}:
''{0}'' must be a signed decimal number.
| true |
| false | technology | active | true |
JSF:SPEC:22.7 | 2 | 5.2.4 |
javax.faces.converter.BigDecimalConverter.DECIMAL_detail
={2}: ''{0}'' must be asigned decimal number consisting
of zero or more digits, that may be followed by a
decimal point and fraction. Example: {1}
| true |
| false | technology | active | true |
JSF:SPEC:22.8 | 2 | 5.2.4 |
javax.faces.converter.BigIntegerConverter.BIGINTEGER
={2}: ''{0}'' must be a number consisting of one or more
digits.
| true |
| false | technology | active | true |
JSF:SPEC:22.9 | 2 | 5.2.4 |
javax.faces.converter.BigIntegerConverter.BIGINTEGER_
detail={2}: ''{0}'' must be a number consisting of one
or more digits. Example: {1}
| true |
| false | technology | active | true |
JSF:SPEC:22.10 | 2 | 5.2.4 |
javax.faces.converter.BooleanConverter.BOOLEAN={1}:
''{0}'' must be 'true' or 'false'.
| true |
| false | technology | active | true |
JSF:SPEC:22.11 | 2 | 5.2.4 |
javax.faces.converter.BooleanConverter.BOOLEAN_detail
={1}: ''{0}'' must be 'true' or 'false'. Any value other
than 'true' will evaluate to 'false'.
| true |
| false | technology | active | true |
JSF:SPEC:22.12 | 2 | 5.2.4 |
javax.faces.converter.ByteConverter.BYTE={2}: ''{0}''
must be a number between 0 and 255.
| true |
| false | technology | active | true |
JSF:SPEC:22.13 | 2 | 5.2.4 |
javax.faces.converter.ByteConverter.BYTE_detail={2}:
''{0}'' must be a number between 0 and 255. Example: {1}
| true |
| false | technology | active | true |
JSF:SPEC:22.14 | 2 | 5.2.4 |
javax.faces.converter.CharacterConverter.CHARACTER={1}:
''{0}'' must be a valid character.
| true |
| false | technology | active | true |
JSF:SPEC:22.15 | 2 | 5.2.4 |
javax.faces.converter.CharacterConverter.CHARACTER_
detail={1}: ''{0}'' must be a valid ASCII character.
| true |
| false | technology | active | true |
JSF:SPEC:22.16 | 2 | 5.2.4 |
javax.faces.converter.DateTimeConverter.DATE={2}:
''{0}'' could not be understood as a date.
| true |
| false | technology | active | true |
JSF:SPEC:22.17 | 2 | 5.2.4 |
javax.faces.converter.DateTimeConverter.DATE_detail={2}:
''{0}'' could not be understood as a date. Example: {1}
| true |
| false | technology | active | true |
JSF:SPEC:22.18 | 2 | 5.2.4 |
javax.faces.converter.DateTimeConverter.TIME={2}:
''{0}'' could not be understood as a time.
| true |
| false | technology | active | true |
JSF:SPEC:22.19 | 2 | 5.2.4 |
javax.faces.converter.DateTimeConverter.TIME_detail={2}:
''{0}'' could not be understood as a time. Example: {1}
| true |
| false | technology | active | true |
JSF:SPEC:22.20 | 2 | 5.2.4 |
javax.faces.converter.DateTimeConverter.DATETIME={2}:
''{0}'' could not be understood as a date and time.
| true |
| false | technology | active | true |
JSF:SPEC:22.21 | 2 | 5.2.4 |
javax.faces.converter.DateTimeConverter.DATETIME_detail=
{2}: ''{0}'' could not be understood as a date and time.
Example: {1}
| true |
| false | technology | active | true |
JSF:SPEC:22.22 | 2 | 5.2.4 |
javax.faces.converter.DateTimeConverter.PATTERN_TYPE=
{1}: A 'pattern' or 'type' attribute must be specified
to convert the value ''{0}''.
| true |
| false | technology | active | true |
JSF:SPEC:22.23 | 2 | 5.2.4 |
javax.faces.converter.DoubleConverter.DOUBLE={2}:
''{0}'' must be a number consisting of one or more
digits.
| true |
| false | technology | active | true |
JSF:SPEC:22.24 | 2 | 5.2.4 |
javax.faces.converter.DoubleConverter.DOUBLE_detail={2}:
''{0}'' must be a number between 4.9E-324 and
1.7976931348623157E308 Example: {1}
| true |
| false | technology | active | true |
JSF:SPEC:22.25 | 2 | 5.2.4 |
javax.faces.converter.EnumConverter.ENUM={2}: ''{0}''
must be convertible to an enum.
| true |
| false | technology | active | true |
JSF:SPEC:22.26 | 2 | 5.2.4 |
javax.faces.converter.EnumConverter.ENUM_detail={2}:
''{0}'' must be convertible to an enum from the enum
that contains the constant ''{1}''.
| true |
| false | technology | active | true |
JSF:SPEC:22.27 | 2 | 5.2.4 |
javax.faces.converter.EnumConverter.ENUM_NO_CLASS={1}:
''{0}'' must be convertible to an enum from the enum,
but no enum class provided.
| true |
| false | technology | active | true |
JSF:SPEC:22.28 | 2 | 5.2.4 |
javax.faces.converter.EnumConverter.ENUM_NO_CLASS_detail
={1}: ''{0}'' must be convertible to an enum from the
enum, but no enum class provided.
| true |
| false | technology | active | true |
JSF:SPEC:22.29 | 2 | 5.2.4 |
javax.faces.converter.FloatConverter.FLOAT={2}: ''{0}''
must be a number consisting of one or more digits.
| true |
| false | technology | active | true |
JSF:SPEC:22.30 | 2 | 5.2.4 |
javax.faces.converter.FloatConverter.FLOAT_detail={2}:
''{0}'' must be a number between 1.4E-45 and
3.4028235E38 Example: {1}
| true |
| false | technology | active | true |
JSF:SPEC:22.31 | 2 | 5.2.4 |
javax.faces.converter.IntegerConverter.INTEGER={2}:
''{0}'' must be a number consisting of one or more
digits.
| true |
| false | technology | active | true |
JSF:SPEC:22.32 | 2 | 5.2.4 |
javax.faces.converter.IntegerConverter.INTEGER_detail=
{2}: ''{0}'' must be a number between -2147483648
and 2147483647 Example: {1}
| true |
| false | technology | active | true |
JSF:SPEC:22.33 | 2 | 5.2.4 |
javax.faces.converter.LongConverter.LONG={2}: ''{0}''
must be a number consisting of one or more digits.
| true |
| false | technology | active | true |
JSF:SPEC:22.34 | 2 | 5.2.4 |
javax.faces.converter.LongConverter.LONG_detail={2}:
''{0}'' must be a number between -9223372036854775808
to 9223372036854775807 Example: {1}
| true |
| false | technology | active | true |
JSF:SPEC:22.35 | 2 | 5.2.4 |
javax.faces.converter.NumberConverter.CURRENCY={2}:
''{0}'' could not be understood as a currency value.
| true |
| false | technology | active | true |
JSF:SPEC:22.36 | 2 | 5.2.4 |
javax.faces.converter.NumberConverter.CURRENCY_detail=
{2}: ''{0}'' could not be understood as a currency value.
Example: {1}
| true |
| false | technology | active | true |
JSF:SPEC:22.37 | 2 | 5.2.4 |
javax.faces.converter.NumberConverter.PERCENT={2}:
''{0}'' could not be understood as a percentage.
| true |
| false | technology | active | true |
JSF:SPEC:22.38 | 2 | 5.2.4 |
javax.faces.converter.NumberConverter.PERCENT_detail=
{2}: ''{0}'' could not be understood as a percentage.
Example: {1}
| true |
| false | technology | active | true |
JSF:SPEC:22.39 | 2 | 5.2.4 |
javax.faces.converter.NumberConverter.NUMBER={2}:
''{0}'' is not a number.
| true |
| false | technology | active | true |
JSF:SPEC:22.40 | 2 | 5.2.4 |
javax.faces.converter.NumberConverter.NUMBER_detail={2}:
''{0}'' is not a number. Example: {1}
| true |
| false | technology | active | true |
JSF:SPEC:22.41 | 2 | 5.2.4 |
javax.faces.converter.NumberConverter.PATTERN={2}:
''{0}'' is not a number pattern.
| true |
| false | technology | active | true |
JSF:SPEC:22.42 | 2 | 5.2.4 |
javax.faces.converter.NumberConverter.PATTERN_detail=
{2}: ''{0}'' is not a number pattern. Example: {1}
| true |
| false | technology | active | true |
JSF:SPEC:22.43 | 2 | 5.2.4 |
javax.faces.converter.ShortConverter.SHORT={2}: ''{0}''
must be a number consisting of one or more digits.
| true |
| false | technology | active | true |
JSF:SPEC:22.44 | 2 | 5.2.4 |
javax.faces.converter.ShortConverter.SHORT_detail={2}:
''{0}'' must be a number between -32768 and 32767
Example: {1}
| true |
| false | technology | active | true |
JSF:SPEC:22.45 | 2 | 5.2.4 |
javax.faces.converter.STRING={1}: Could not convert
''{0}'' to a string.
| true |
| false | technology | active | true |
JSF:SPEC:22.46 | 2 | 5.2.4 |
javax.faces.validator.DoubleRangeValidator.MAXIMUM --
{1}: Validation Error: Value is greater than allowable
maximum of ‘’{0}’’
| true |
| false | technology | active | true |
JSF:SPEC:22.47 | 2 | 5.2.4 |
javax.faces.validator.DoubleRangeValidator.MINIMUM --
{1}: Validation Error: Value is less than allowable
minimum of ‘’{0}’’
| true |
| false | technology | active | true |
JSF:SPEC:22.48 | 2 | 5.2.4 |
javax.faces.validator.DoubleRangeValidator.NOT_IN_RANGE
-- {2}: Validation Error: Specified attribute is not
between the expected values of {0} and {1}.
| true |
| false | technology | active | true |
JSF:SPEC:22.49 | 2 | 5.2.4 |
javax.faces.validator.DoubleRangeValidator.TYPE -- {0}:
Validation Error: Value is not of the correct type
| true |
| false | technology | active | true |
JSF:SPEC:22.50 | 2 | 5.2.4 |
javax.faces.validator.LengthValidator.MAXIMUM -- {1}:
Validation Error: Value is greater than allowable
maximum of ‘’{0}’’
| true |
| false | technology | active | true |
JSF:SPEC:22.51 | 2 | 5.2.4 |
javax.faces.validator.LengthValidator.MINIMUM -- {1}:
Validation Error: Value is less than allowable minimum
of ‘’{0}’’
| true |
| false | technology | active | true |
JSF:SPEC:22.52 | 2 | 5.2.4 |
javax.faces.validator.LongRangeValidator.MAXIMUM --
{1}: Validation Error: Value is greater than allowable
maximum of ‘’{0}’’
| true |
| false | technology | active | true |
JSF:SPEC:22.53 | 2 | 5.2.4 |
javax.faces.validator.LongRangeValidator.MINIMUM -- {1}:
Validation Error Value is less than allowable minimum of
‘’{0}’’
| true |
| false | technology | active | true |
JSF:SPEC:22.54 | 2 | 5.2.4 |
javax.faces.validator.LongRangeValidator.NOT_IN_RANGE=
{2}: Validation Error: Specified attribute is not
between the expected values of {0} and {1}.
| true |
| false | technology | active | true |
JSF:SPEC:22.55 | 2 | 5.2.4 |
javax.faces.validator.LongRangeValidator.TYPE -- {0}:
Validation Error: Value is not of the correct type
| true |
| false | technology | active | true |
JSF:SPEC:23 | 2 | 5.2.4 |
These ResourceBundle keys must be used to look up the necessary
values to create a localized FacesMessage instance. Note that
the value of the summary and detail keys in the ResourceBundle
may contain parameter substitution tokens, which must be
substituted with the appropriate values using
java.text.MessageFormat.
| true |
| false | technology | active | true |
JSF:SPEC:24 | 2 | 5.2.4 |
The following algorithm must be used to create a FacesMessage
instance given a message key.
| true |
| false | technology | active | true |
JSF:SPEC:24.1 | 2 | 5.2.4 |
Call getMessageBundle() on the Application instance for
this web application, to determine if the application
has defined a resource bundle name. If so, load that
ResourceBundle and look for the message there.
| true |
| false | technology | active | true |
JSF:SPEC:24.2 | 2 | 5.2.4 |
If not there, look in the javax.faces.Messages
resource bundle.
| true |
| false | technology | active | true |
JSF:SPEC:25 | 2 | 5.3.1 |
A custom component that extends UIComponent directly, and does
not extend any of the standard components must implement
StateHolder manually.
| true |
| false | technology | active | true |
JSF:SPEC:26 | 2 | 5.3.1 |
A custom component that does extend from one of the standard
components and maintains its own state, in addition to the state
maintained by the superclass must take special care to implement
StateHolder correctly. Notably, calls to saveState() must not
alter the state in any way.
| true |
| false | technology | active | true |
JSF:SPEC:27 | 3 | 1.1 |
Every User Interface component may be named by a component
identifier, which (if utilized) must be unique among the
components that share a common naming container parent in a
component tree.
| true |
| false | technology | active | true |
JSF:SPEC:28 | 3 | 1.1 |
Component identifiers must conform to the following rules:
| true |
| false | technology | active | false |
JSF:SPEC:28.1 | 3 | 1.1 |
They must start with a letter (as defined by the
Character.isLetter() method).
| true |
| false | technology | active | true |
JSF:SPEC:28.2 | 3 | 1.1 |
Subsequent characters may be letters (as defined by the
Character.isLetter() method), digits as defined by the
Character.isDigit() method, dashes (‘-’), and
underscores (‘_’).
| true |
| false | technology | active | true |
JSF:SPEC:29 | 3 | 1.4 |
The implementation of setValueExpression must detemine if the
expression is a literal by calling
ValueExpression.isLiteralText() on the expression argument.
| true |
| false | technology | active | true |
JSF:SPEC:29.1 | 3 | 1.4 |
If the expression argument is literal text, then
ValueExpression.getValue() must be called on the
expression argument.
| true |
| false | technology | active | true |
JSF:SPEC:29.2 | 3 | 1.4 |
The result must be used as the value argument, along
with the name argument to this component
getAttributes().put(name,value) method call.
| true |
| false | technology | active | true |
JSF:SPEC:30 | 3 | 1.4 |
For the standard component classes defined by this
specification, all attributes, and all properties other than id
and parent, are value expression enabled.
| true |
| false | technology | active | true |
JSF:SPEC:31 | 3 | 1.5 |
The specified ValueExpression must point to a read-write
JavaBeans property of type UIComponent(or appropriate subclass).
Such a component binding is used at two different times
during the processing of a Faces Request:
| true |
| false | technology | active | true |
JSF:SPEC:31.1 | 3 | 1.5 |
When a component instance is first created (typically by
virtue of being referenced by a UIComponentELTag in a
JSP page), the JSF implementation will retrieve the
ValueExpression for the name binding, and call
getValue() on it.
| true |
| false | technology | active | true |
JSF:SPEC:31.1.1 | 3 | 1.5 |
If this call returns a non-null UIComponent
value (because the JavaBean programmatically
instantiated and configured a component
already), that instance will be added to the
component tree that is being created.
| true |
| false | technology | active | true |
JSF:SPEC:31.1.2 | 3 | 1.5 |
If the call returns null, a new component
instance will be created, added to the component
tree, and setValue() will be called on the
ValueBinding (which will cause the property on
the JavaBean to be set to the newly created
component instance).
| true |
| false | technology | active | true |
JSF:SPEC:31.2 | 3 | 1.5 |
When a component tree is recreated during the Restore
View phase of the request processing lifecycle, for each
component that has a ValueExpression associated with the
name “binding”, setValue() will be called on it, passing
the recreated component instance.
| true |
| false | technology | active | true |
JSF:SPEC:32 | 3 | 1.7 |
The UIComponent.getChildren() method returns a mutable List.
The returned List implementation must support all of the
required and optional methods of the List interface, as well as
update the parent property of children that are added and
removed, as described in the Javadocs for this method.
| true |
| false | technology | active | true |
JSF:SPEC:33 | 3 | 1.7 |
If there are no children, the getChildCount() method must
return 0.
| true |
| false | technology | active | true |
JSF:SPEC:34 | 3 | 1.7 |
The getChildCount() must not cause the creation of a child
component list, so it is preferred over calling
getChildren().size() when there are no children.
| true |
| false | technology | active | true |
JSF:SPEC:35 | 3 | 1.10 |
The Map returned by getAttributes() must also support
attribute-property transparency, which operates as follows:
| true |
| false | technology | active | true |
JSF:SPEC:35.1 | 3 | 1.10 |
When the get() method is called, if the specified
attribute name matches the name of a readable JavaBeans
property on the component implementation class, the
value returned will be acquired by calling the
appropriate property getter method, and wrapping Java
primitive values (such as int) in their corresponding
wrapper classes (such as java.lang.Integer) if
necessary. If the specified attribute name does not
match the name of a readable JavaBeans property on the
component implementation class, consult the internal
data-structure to in which generic attributes are
stored. If no entry exists in the internal
data-structure, see if there is a ValueExpression for
this attribute name by calling getValueExpression(),
passing the attribute name as the key. If a
ValueExpression exists, call getValue() on it, returning
the result. If an ELException is thrown wrap it in a
FacesException and re-throw it.
| true |
| false | technology | active | true |
JSF:SPEC:35.2 | 3 | 1.10 |
When the put() method is called, if the specified
attribute name matches the name of a writable JavaBeans
property on the component implementation class, the
appropriate property setter method will be called. If
the specified attribute name does not match the name of
a writable JavaBeans property, simply put the value in
the data-structure for generic attributes.
| true |
| false | technology | active | true |
JSF:SPEC:35.3 | 3 | 1.10 |
When the remove() method is called, if the specified
attribute name matches the name of a JavaBeans property
on the component, an IllegalArgumentException must be
thrown.
| true |
| false | technology | active | true |
JSF:SPEC:35.4 | 3 | 1.10 |
When the containsKey() method is called, if the
specified attribute name matches the name of a JavaBeans
property, return false. Otherwise, return true if and
only if the specified attribute name exists in the
internal data-structure for the generic attributes.
| true |
| false | technology | active | true |
JSF:SPEC:36 | 3 | 1.10 |
The following converter id values must be registered to create
instances of the specified Converter implementation classes:
| true |
| false | technology | active | true |
JSF:SPEC:36.1 | 3 | 3.3 |
javax.faces.BigDecimal -- An instance of
javax.faces.convert.BigDecimalConverter (or a subclass
of this class).
| true |
| false | technology | active | true |
JSF:SPEC:36.2 | 3 | 3.3 |
javax.faces.BigInteger -- An instance of
javax.faces.convert.BigIntegerConverter (or a subclass
of this class).
| true |
| false | technology | active | true |
JSF:SPEC:36.3 | 3 | 3.3 |
javax.faces.Boolean -- An instance of
javax.faces.convert.BooleanConverter (or a subclass
of this class).
| true |
| false | technology | active | true |
JSF:SPEC:36.4 | 3 | 3.3 |
javax.faces.Byte -- An instance of
javax.faces.convert.ByteConverter (or a subclass of
this class).
| true |
| false | technology | active | true |
JSF:SPEC:36.5 | 3 | 3.3 |
javax.faces.Character -- An instance of
javax.faces.convert.CharacterConverter (or a subclass of
this class).
| true |
| false | technology | active | true |
JSF:SPEC:36.6 | 3 | 3.3 |
javax.faces.DateTime -- An instance of
javax.faces.convert.DateTimeConverter (or a subclass of
this class).
| true |
| false | technology | active | true |
JSF:SPEC:36.7 | 3 | 3.3 |
javax.faces.Double -- An instance of
javax.faces.convert.DoubleConverter (or a subclass of
this class).
| true |
| false | technology | active | true |
JSF:SPEC:36.8 | 3 | 3.3 |
javax.faces.Float -- An instance of
javax.faces.convert.FloatConverter (or a subclass of
this class).
| true |
| false | technology | active | true |
JSF:SPEC:36.9 | 3 | 3.3 |
javax.faces.Integer -- An instance of
javax.faces.convert.IntegerConverter (or a subclass of
this class).
| true |
| false | technology | active | true |
JSF:SPEC:36.10 | 3 | 3.3 |
javax.faces.Long -- An instance of
javax.faces.convert.LongConverter (or a subclass of this
class).
| true |
| false | technology | active | true |
JSF:SPEC:36.11 | 3 | 3.3 |
javax.faces.Number -- An instance of
javax.faces.convert.NumberConverter (or a subclass of
this class).
| true |
| false | technology | active | true |
JSF:SPEC:36.12 | 3 | 3.3 |
javax.faces.Short -- An instance of
javax.faces.convert.ShortConverter (or a subclass of
this class).
| true |
| false | technology | active | true |
JSF:SPEC:37 | 3 | 3.3 |
A JSF implementation must register converters for all of the
following classes using the by-type registration mechanism:
| true |
| false | technology | active | true |
JSF:SPEC:37.1 | 3 | 3.3 |
java.math.BigDecimal, and java.math.BigDecimal.TYPE --
An instance of javax.faces.convert.BigDecimalConverter
(or a subclass of this class).
| true |
| false | technology | active | true |
JSF:SPEC:37.2 | 3 | 3.3 |
java.math.BigInteger, and java.math.BigInteger.TYPE --
An instance of javax.faces.convert.BigIntegerConverter
(or a subclass of this class).
| true |
| false | technology | active | true |
JSF:SPEC:37.3 | 3 | 3.3 |
java.lang.Boolean, and java.lang.Boolean.TYPE -- An
instance of javax.faces.convert.BooleanConverter
(or a subclass of this class).
| true |
| false | technology | active | true |
JSF:SPEC:37.4 | 3 | 3.3 |
java.lang.Byte, and java.lang.Byte.TYPE -- An instance
of javax.faces.convert.ByteConverter (or a subclass of
this class).
| true |
| false | technology | active | true |
JSF:SPEC:37.5 | 3 | 3.3 |
java.lang.Character, and java.lang.Character.TYPE -- An
instance of javax.faces.convert.CharacterConverter
(or a subclass of this class).
| true |
| false | technology | active | true |
JSF:SPEC:37.6 | 3 | 3.3 |
java.lang.Double, and java.lang.Double.TYPE -- An
instance of javax.faces.convert.DoubleConverter (or a
subclass of this class).
| true |
| false | technology | active | true |
JSF:SPEC:37.7 | 3 | 3.3 |
java.lang.Float, and java.lang.Float.TYPE -- An instance
of javax.faces.convert.FloatConverter (or a subclass of
this class).
| true |
| false | technology | active | true |
JSF:SPEC:37.8 | 3 | 3.3 |
java.lang.Integer, and java.lang.Integer.TYPE -- An
instance of javax.faces.convert.IntegerConverter (or a
subclass of this class).
| true |
| false | technology | active | true |
JSF:SPEC:37.9 | 3 | 3.3 |
java.lang.Long, and java.lang.Long.TYPE -- An instance
of javax.faces.convert.LongConverter (or a subclass of
this class).
| true |
| false | technology | active | true |
JSF:SPEC:37.10 | 3 | 3.3 |
java.lang.Short, and java.lang.Short.TYPE -- An instance
of javax.faces.convert.ShortConverter (or a subclass of
this class).
| true |
| false | technology | active | true |
JSF:SPEC:37.11 | 3 | 3.3 |
java.lang.Enum, and java.lang.Enum.TYPE -- An instance
of javax.faces.convert.EnumConverter (or a subclass of
this class).
| true |
| false | technology | active | true |
JSF:SPEC:38 | 3 | 3.3 |
A compliant implementation must allow the registration of a
converter for class java.lang.String and java.lang.String.TYPE
that will be used to convert values for these types.
| true |
| false | technology | active | true |
JSF:SPEC:39 | 3 | 4.5 |
A concrete UIComponent subclass that emits events of a
particular type must include public methods to register and
deregister a listener implementation.
| true |
| false | technology | active | true |
JSF:SPEC:40 | 3 | 5.5 |
The following standard Validator implementations (in the
javax.faces.validator package) are provided:
| true |
| false | technology | active | true |
JSF:SPEC:40.1 | 3 | 4.5 |
DoubleRangeValidator—Checks the local value of a
component, which must be of any numeric type, against
specified maximum and/or minimum values. Standard
identifier is “javax.faces.DoubleRange”.
| true |
| false | technology | active | true |
JSF:SPEC:40.2 | 3 | 4.5 |
LengthValidator—Checks the length (i.e. number of
characters) of the local value of a component, which
must be of type String, against maximum and/or minimum
values. Standard identifier is “javax.faces.Length”.
| true |
| false | technology | active | true |
JSF:SPEC:40.3 | 3 | 4.5 |
LongRangeValidator—Checks the local value of a
component, which must be of any numeric type convertible
to long, against maximum and/or minimum values. Standard
identifier is “javax.faces.LongRange”.
| true |
| false | technology | active | true |
JSF:SPEC:40.4 | 3 | 4.5 |
MethodExpressionValidator—Wraps a MethodExpression and
interprets it as pointing to a method that performs
validation. Any exception thrown when the expression
is invoked is wrapped in a ValidatorException in similar
fashion as the above validators.
| true |
| false | technology | active | true |
JSF:SPEC:41 | 4 | 1 |
The implementation for each standard UIComponent class
must specify two public static final String constant values:
| true |
| false | technology | active | true |
JSF:SPEC:41.1 | 4 | 1 |
COMPONENT_TYPE -- The standard component type identifier
under which the corresponding component class is
registered with the Application object for this
application. This value may be used as a parameter to
the createComponent() method.
| true |
| false | technology | active | true |
JSF:SPEC:41.2 | 4 | 1 |
COMPONENT_FAMILY -- The standard component family
identifier used to select an appropriate Renderer for
this component.
| true |
| false | technology | active | true |
JSF:SPEC:42 | 4 | 1.1.2 |
UIColumn specializes the behavior of render-independent
properties inherited from the parent class as follows:
| true |
| false | technology | active | true |
JSF:SPEC:42.1 | 4 | 1.1.2 |
The default value of the family property must be set to
“javax.faces.Column”.
| true |
| false | technology | active | true |
JSF:SPEC:42.2 | 4 | 1.1.2 |
The default value of the rendererType property must be
set to null.
| true |
| false | technology | active | true |
JSF:SPEC:43 | 4 | 1.2.2 |
UICommand components specialize the behavior of
renderindependent properties inherited from the parent class as
follows:
| true |
| false | technology | active | true |
JSF:SPEC:43.1 | 4 | 1.2.2 |
The default value of the family property must be set to
“javax.faces.Command”.
| true |
| false | technology | active | true |
JSF:SPEC:43.2 | 4 | 1.2.2 |
The default value of the rendererType property must be
set to “javax.faces.Button”.
| true |
| false | technology | active | true |
JSF:SPEC:44 | 4 | 1.3.2 |
UIData specializes the behavior of render-independent properties
inherited from the parent component as follows:
| true |
| false | technology | active | true |
JSF:SPEC:44.1 | 4 | 1.3.2 |
The default value of the family property must be set to
“javax.faces.Data”.
| true |
| false | technology | active | true |
JSF:SPEC:44.2 | 4 | 1.3.2 |
The default value of the rendererType property must be
set to “javax.faces.Table”.
| true |
| false | technology | active | true |
JSF:SPEC:45 | 4 | 1.3.2 |
A DataModel wrapper instance must automatically be provided by
the JSF implementation if the current value is of one of the
following types:
| true |
| false | technology | active | true |
JSF:SPEC:45.1 | 4 | 1.3.2 |
java.util.List
| true |
| false | technology | active | true |
JSF:SPEC:45.2 | 4 | 1.3.2 |
Array of java.util.Object
| true |
| false | technology | active | true |
JSF:SPEC:45.3 | 4 | 1.3.2 |
java.sql.ResultSet (which therefore also supports
javax.sql.RowSet)
| true |
| false | technology | active | true |
JSF:SPEC:45.4 | 4 | 1.3.2 |
javax.servlet.jsp.jstl.sql.Result
| true |
| false | technology | active | true |
JSF:SPEC:45.5 | 4 | 1.3.2 |
Any other Java object is wrapped by a DataModel instance
with a single row
| true |
| false | technology | active | true |
JSF:SPEC:46 | 4 | 1.3.3 |
UIData specializes the behavior of the processDecodes(),
processValidators(), and processUpdates() methods inherited from
its parent as follows:
| true |
| false | technology | active | true |
JSF:SPEC:46.1 | 4 | 1.3.3 |
For each of these methods, the UIData implementation
must iterate over each row in the underlying data model,
starting with the row identified by the first property,
for the number of rows indicated by the rows property,
by calling the setRowIndex() method.
| true |
| false | technology | active | true |
JSF:SPEC:46.2 | 4 | 1.3.3 |
When iteration is complete, set the rowIndex property of
this component, and of the underlying DataModel, to
zero, and remove any request attribute exposed via the
var property.
| true |
| false | technology | active | true |
JSF:SPEC:47 | 4 | 1.4.1 |
The encodeEnd() method of the renderer for UIForm must call
ViewHandler.writeState() before writing out the markup for the
closing tag of the form.
| true |
| false | technology | active | true |
JSF:SPEC:48 | 4 | 1.4.2 |
UIForm specializes the behavior of render-independent properties
inherited from the parent component as follows:
| true |
| false | technology | active | true |
JSF:SPEC:48.1 | 4 | 1.4.2 |
The default value of the family property must be set to
“javax.faces.Form”.
| true |
| false | technology | active | true |
JSF:SPEC:48.2 | 4 | 1.4.2 |
The default value of the rendererType property must be
set to “javax.faces.Form”.
| true |
| false | technology | active | true |
JSF:SPEC:49 | 4 | 1.4.3 |
The setSubmitted() method of each UIForm instance in the view
must be called during the Apply Request Values phase of the
request processing lifecycle, during the processing performed by
the UIComponent.decode() method. If this UIForm instance
represents the form actually being submitted on this request,
the parameter must be set to true; otherwise, it must be set to
false.
| true |
| false | technology | active | true |
JSF:SPEC:50 | 4 | 1.4.3 |
The value of a UIForm's submitted property must not be saved as
part of its state.
| true |
| false | technology | active | true |
JSF:SPEC:51 | 4 | 1.4.3 |
The saveState() method of UIForm must call setSubmitted(false)
before calling super.saveState().
| true |
| false | technology | active | true |
JSF:SPEC:52 | 4 | 1.4.3 |
Override the parent method to ensure that children of this
UIForm instance in the view have the form’s clientId prepended
to their clientIds if and only if the form’s prependId property
is true.
| true |
| false | technology | active | true |
JSF:SPEC:53 | 4 | 1.5.2 |
UIGraphic specializes the behavior of render-independent
properties inherited from the parent component as follows:
| true |
| false | technology | active | true |
JSF:SPEC:53.1 | 4 | 1.5.2 |
The default value of the family property must be set to
“javax.faces.Graphic”.
| true |
| false | technology | active | true |
JSF:SPEC:53.2 | 4 | 1.5.2 |
The default value of the rendererType property must be
set to “javax.faces.Image”.
| true |
| false | technology | active | true |
JSF:SPEC:54 | 4 | 1.6.2 |
UIInput specializes the behavior of render-independent
properties inherited from the parent component as follows:
| true |
| false | technology | active | true |
JSF:SPEC:54.1 | 4 | 1.6.2 |
The default value of the family property must be set to
“javax.faces.Input”.
| true |
| false | technology | active | true |
JSF:SPEC:54.2 | 4 | 1.6.2 |
The default value of the rendererType property must be
set to “javax.faces.Text”.
| true |
| false | technology | active | true |
JSF:SPEC:54.3 | 4 | 1.6.2 |
The Converter specified by the converter property (if
any) must also be used to perform String->Object
conversions during decoding.
| true |
| false | technology | active | true |
JSF:SPEC:54.4 | 4 | 1.6.2 |
If the value property has an associated ValueExpression,
the setValue() method of that ValueExpression will be
called during the Update Model Values phase of the
request processing lifecycle to push the local value of
the component back to the corresponding model bean
property.
| true |
| false | technology | active | true |
JSF:SPEC:55 | 4 | 1.7.2 |
UIMessage specializes the behavior of render-independent
properties inherited from the parent component as follows:
| true |
| false | technology | active | true |
JSF:SPEC:55.1 | 4 | 1.7.2 |
The default value of the family property must be set to
“javax.faces.Message”.
| true |
| false | technology | active | true |
JSF:SPEC:55.2 | 4 | 1.7.2 |
The default value of the rendererType property must be
set to “javax.faces.Message”.
| true |
| false | technology | active | true |
JSF:SPEC:56 | 4 | 1.9.2 |
UIOutput specializes the behavior of render-independent
properties inherited from the parent component as follows:
| true |
| false | technology | active | true |
JSF:SPEC:56.1 | 4 | 1.9.2 |
The default value of the family property must be set to
“javax.faces.Output”.
| true |
| false | technology | active | true |
JSF:SPEC:56.2 | 4 | 1.9.2 |
The default value of the rendererType property must be
set to “javax.faces.Text”.
| true |
| false | technology | active | true |
JSF:SPEC:57 | 4 | 1.10.2 |
UIPanel specializes the behavior of render-independent
properties inherited from the parent component as follows:
| true |
| false | technology | active | true |
JSF:SPEC:57.1 | 4 | 1.10.2 |
The default value of the family property must be set to
“javax.faces.Panel”.
| true |
| false | technology | active | true |
JSF:SPEC:57.2 | 4 | 1.10.2 |
The default value of the rendererType property must be
set to null.
| true |
| false | technology | active | true |
JSF:SPEC:58 | 4 | 1.11.2 |
UIParameter specializes the behavior of renderindependent
properties inherited from the parent component as follows:
| true |
| false | technology | active | true |
JSF:SPEC:58.1 | 4 | 1.11.2 |
The default value of the family property must be set to
“javax.faces.Parameter”.
| true |
| false | technology | active | true |
JSF:SPEC:58.2 | 4 | 1.11.2 |
The default value of the rendererType property must be
set to null.
| true |
| false | technology | active | true |
JSF:SPEC:59 | 4 | 1.12.2 |
UISelectBoolean specializes the behavior of render-independent
properties inherited from the parent component as follows:
| true |
| false | technology | active | true |
JSF:SPEC:59.1 | 4 | 1.12.2 |
The default value of the family property must be set to
“javax.faces.SelectBoolean”.
| true |
| false | technology | active | true |
JSF:SPEC:59.2 | 4 | 1.12.2 |
The default value of the rendererType property must be
set to “javax.faces.Checkbox”.
| true |
| false | technology | active | true |
JSF:SPEC:60 | 4 | 1.13.2 |
UISelectItem specializes the behavior of renderindependent
properties inherited from the parent component as follows:
| true |
| false | technology | active | true |
JSF:SPEC:60.1 | 4 | 1.13.2 |
The default value of the family property must be set to
“javax.faces.SelectItem”.
| true |
| false | technology | active | true |
JSF:SPEC:60.2 | 4 | 1.13.2 |
The default value of the rendererType property must be
set to null.
| true |
| false | technology | active | true |
JSF:SPEC:60.3 | 4 | 1.13.2 |
If the value property is non-null, it must contain a
SelectItem instance used to configure the selection item
specified by this component.
| true |
| false | technology | active | true |
JSF:SPEC:60.4 | 4 | 1.13.2 |
If the value property is a value expression, it must
point at a SelectItem instance used to configure the
selection item specified by this component.
| true |
| false | technology | active | true |
JSF:SPEC:60.5 | 4 | 1.13.2 |
If the value property is null, and there is no
corresponding value expression, the itemDescription,
itemDisabled, itemLabel and itemValue properties must be
used to construct a new SelectItem representing the
selection item specified by this component.
| true |
| false | technology | active | true |
JSF:SPEC:61 | 4 | 1.14.2 |
UISelectItems specializes the behavior of renderindependent
properties inherited
| true |
| false | technology | active | true |
JSF:SPEC:61.1 | 4 | 1.14.2 |
The default value of the family property must be set to
“javax.faces.SelectItems”.
| true |
| false | technology | active | true |
JSF:SPEC:61.2 | 4 | 1.14.2 |
The default value of the rendererType property must be
set to null.
| true |
| false | technology | active | true |
JSF:SPEC:61.3 | 4 | 1.14.2 |
If the value property (or the value returned by a value
expression associated with the value property) is
non-null, it must contain a SelectItem bean, an array of
SelectItem beans, a Collection of SelectItem beans, or a
Map, where each map entry is used to construct a
SelectItem bean with the key as the label property of
the bean, and the value as the value property of the
bean (which must be of the same basic type as the value
of the parent component’s value).
| true |
| false | technology | active | true |
JSF:SPEC:62 | 4 | 1.15.3 |
UISelectMany must provide a specialized validate() method which
ensures that any decoded values are valid options (from the
nested UISelectItem and UISelectItems children).
| true |
| false | technology | active | true |
JSF:SPEC:63 | 4 | 1.16.2 |
UISelectOne specializes the behavior of renderindependent
properties inherited from the parent component as follows:
| true |
| false | technology | active | true |
JSF:SPEC:63.1 | 4 | 1.16.2 |
The default value of the family property must be set to
“javax.faces.SelectOne”.
| true |
| false | technology | active | true |
JSF:SPEC:63.2 | 4 | 1.16.2 |
The default value of the rendererType property must be
set to “javax.faces.Menu”.
| true |
| false | technology | active | true |
JSF:SPEC:64 | 4 | 1.16.3 |
UISelectOne must provide a specialized validate() method which
ensures that any decoded value is a valid option (from the
nested UISelectItem and UISelectItems children).
| true |
| false | technology | active | true |
JSF:SPEC:65 | 4 | 1.17.3 |
UIViewRoot specializes the behavior of render-independent
properties inherited from the parent component as follows:
| true |
| false | technology | active | true |
JSF:SPEC:65.1 | 4 | 1.17.3 |
The default value of the family property must be set to
“javax.faces.ViewRoot”.
| true |
| false | technology | active | true |
JSF:SPEC:65.2 | 4 | 1.17.3 |
The default value of the rendererType property must be
set to null.
| true |
| false | technology | active | true |
JSF:SPEC:66 | 4 | 2.1.4 |
The JSF implementation must provide concrete implementations of
DataModel (in the javax.faces.model package) for the following
data wrapping scenarios:
| true |
| false | technology | active | true |
JSF:SPEC:66.1 | 4 | 2.1.4 |
ArrayDataModel -- Wrap an array of Java objects.
| true |
| false | technology | active | true |
JSF:SPEC:66.2 | 4 | 2.1.4 |
ListDataModel -- Wrap a java.util.List of Java objects.
| true |
| false | technology | active | true |
JSF:SPEC:66.3 | 4 | 2.1.4 |
ResultDataModel -- Wrap an object of type
javax.servlet.jsp.jstl.sql.Result (the query results
from JSTL’s SQL tag library)
| true |
| false | technology | active | true |
JSF:SPEC:66.4 | 4 | 2.1.4 |
ResultSetDataModel -- Wrap an object of type
java.sql.ResultSet (which therefore means that
javax.sql.RowSet instances are also supported).
| true |
| false | technology | active | true |
JSF:SPEC:66.5 | 4 | 2.1.4 |
ScalarDataModel -- Wrap a single Java object in what
appears to be a one-row data set.
| true |
| false | technology | active | true |
JSF:SPEC:67 | 5 | 3 |
It is an error to specify a managed bean class that does not
exist, or that cannot be instantiated with a public, zero-args
constructor.
| true |
| false | technology | active | true |
JSF:SPEC:68 | 5 | 3 |
It is an error to specify a <property-name> element for a
property that does not exist, or does not have a public setter
method, on the specified managed bean class.
| true |
| false | technology | active | true |
JSF:SPEC:69 | 5 | 3 |
It is an error to specify a value element that cannot be
converted to the type required by a managed property, or that,
when evaluated, results in a value that cannot be converted to
the type required by a managed property.
| true |
| false | technology | active | true |
JSF:SPEC:70 | 5 | 3 |
If the type of the property referenced by the
<managed-property> element is a Java enum, the contents of
the <value> element must be a String that yields a valid
return from java.lang.Enum.valueOf(PROPERTY_CLASS, VALUE) where
PROPERTY_CLASS is the java.lang.Class for the property and VALUE
is the contents of <value> element in the application
configuration resource. If any exception is thrown from
Enum.valueOf() it is an error.
| true |
| false | technology | active | true |
JSF:SPEC:71 | 5 | 3 |
It is an error for a managed bean created through The Managed
Bean Creation Facility to have a property that points at an
object stored in a scope with a (potentially) shorter life span.
Specifically, this means, for an object created with the
specified <managed-bean-scope>, then <value>
evaluations can only point at created objects with the specified
managed bean scope:
â– none -- none
â– application -- none, application
â– session -- none, application, session
â– request -- none, application, session, request
| true |
| false | technology | active | true |
JSF:SPEC:72 | 5 | 3 |
Data accessed via an implicit object is also defined to be in a
scope. The following implicit objects are considered to be in
request scope:
â– cookie
â– facesContext
â– header
â– headerValues
â– param
â– paramValues
â– request
â– requestScope
â– view
| true |
| false | technology | active | true |
JSF:SPEC:73 | 5 | 3 |
The only implicit objects in session scope are session and
sessionScope.
| true |
| false | technology | active | true |
JSF:SPEC:74 | 5 | 3 |
The following implicit objects are considered to be in
application scope:
â– application
â– applicationScope
â– initParam
| true |
| false | technology | active | true |
JSF:SPEC:75 | 5 | 3 |
It is an error to configure cyclic references between managed
beans.
| true |
| false | technology | active | true |
JSF:SPEC:76 | 5 | 3 |
Managed bean names must conform to the syntax of a Java language
identifier.
| true |
| false | technology | active | true |
JSF:SPEC:77 | 5 | 3 |
<null-value/> -- An empty element indicating that this property
must be explicitly initialized to null. This element is not allowed if
the underlying property is of a Java primitive type.
| true |
| false | technology | active | true |
JSF:SPEC:78 | 5 | 3 |
Each <managed-property> element contains the following elements
used to configure the execution of the corresponding property setter
call:
| true |
| false | technology | active | false |
JSF:SPEC:78.1 | 5 | 3 |
<property-name> -- The property name of the property to be
configured.
| true |
| false | technology | active | true |
JSF:SPEC:78.2 | 5 | 3 |
<map-entries> -- A set of key/value pairs used to
initialize the contents of a property of type java.util.Map.
| true |
| false | technology | active | true |
JSF:SPEC:78.3 | 5 | 3 |
<null-value/> -- An empty element indicating that this
property must be explicitly initialized to null. This element is
not allowed if the underlying property is of a Java primitive
type.
| true |
| false | technology | active | true |
JSF:SPEC:78.4 | 5 | 3 |
<value> -- A String value that will have any leading and
trailing spaces stripped, and then be converted prior to
setting it to this value.
| true |
| false | technology | active | true |
JSF:SPEC:78.5 | 5 | 3 |
<list-entries> -- A set of values used to initialize the
contents of a property of type array or java.util.List.
| true |
| false | technology | active | true |
JSF:SPEC:79 | 5 | 3 |
The initialization of bean properties from <map-entries> elements
must adhere to the following algorithm:
| true |
| false | technology | active | false |
JSF:SPEC:79.1 | 5 | 3 |
Call the property getter. If the getter returns null or doesn't
exist, create a java.util.HashMap, otherwise
use the returned java.util.Map.
| true |
| false | technology | active | true |
JSF:SPEC:79.2 | 5 | 3 |
Add all entries defined by nested <map-entry> elements in
the order they are listed, converting key values defined by
nested <key> elements to the type defined by <keyclass>
and entry values defined by nested <value> elements to the
type defined by <value-class>.
| true |
| false | technology | active | true |
JSF:SPEC:79.3 | 5 | 3 |
If a value is given as a value expression, evaluate the
reference and store the result, converting to <value-class>
if necessary. If <key-class> and/or <value-class>
are not defined, use java.lang.String. Add null for each
<null-value> element.
| true |
| false | technology | active | true |
JSF:SPEC:79.4 | 5 | 3 |
If a new java.util.Map was created, set the property by calling
the setter method, or log an error if there is no setter method.
| true |
| false | technology | active | true |
JSF:SPEC:80 | 5 | 3 |
The initialization of bean properties from <list-entries> elements
must adhere to the following algorithm:
| true |
| false | technology | active | true |
JSF:SPEC:80.1 | 5 | 3 |
Call the property getter, If the getter returns null or doesn't
exist, create a java.util.ArrayList, otherwise use the returned
Object (an array or a java.util.List).
| true |
| false | technology | active | true |
JSF:SPEC:80.2 | 5 | 3 |
add all elements defined by nested <value> elements in the
order they are listed, converting values defined by nested
<value> elements to the type defined by <value-class>.
| true |
| false | technology | active | true |
JSF:SPEC:80.3 | 5 | 3 |
If a value is given as a value expression, evaluate the
reference and store the result, converting to <valueclass>
if necessary. If a <value-class> is not defined, use the
value as-is (i.e., as a java.lang.String). Add null for each
<null-value> element.
| true |
| false | technology | active | true |
JSF:SPEC:80.4 | 5 | 3 |
If an array was returned, create a java.util.ArrayList and copy
all elements from the returned array to the new List, wrapping
elements of a primitive type.
| true |
| false | technology | active | true |
JSF:SPEC:80.5 | 5 | 3 |
If a new java.util.List was created, and the property is of type
List, set the property by calling the setter method, or log an
error if there is no setter method.
| true |
| false | technology | active | true |
JSF:SPEC:80.6 | 5 | 3 |
If a new java.util.List was created, and the property is a java
array, convert the List into an array of the property type, and
set it by calling the setter method, or log an error if there is
no setter method.
| true |
| false | technology | active | true |
JSF:SPEC:80.7 | 5 | 3 |
If a new java.util.List was created, convert the List
to an array of the proper type for the property and set the
property by calling the setter method, or log an error if there
is no setter method.
| true |
| false | technology | active | true |
JSF:SPEC:81 | 5 | 4 |
Here is a summary of the valid injection annotations one may use
in a managed bean.
@Resource
@Resources
@EJB
@EJBs
@WebServiceRef
@WebServiceRefs
@PersistenceContext
@PersistenceContexts
@PersistenceUnit
@PersistenceUnits
| true |
| false | technology | active | true |
JSF:SPEC:82 | 5 | 4.1 |
JSF implementations running in a Java EE 5 compliant container must
support attaching the @PostConstruct and @PreDestroy annotations to aid
in awareness of the managedbean lifecycle.
| true |
| false | technology | active | true |
JSF:SPEC:82.1 | 5 | 4.1 |
Methods on managed beans declared to be in request, session, or
application scope, annotated with @PostConstruct, must be called
by the JSF implementation after resource injection is performed
(if any) but before the bean is placed into scope.
| true |
| false | technology | active | true |
JSF:SPEC:82.2 | 5 | 4.1 |
If the method throws an unchecked exception, the JSF
implementation must not put the managed-bean into service and
further methods on that managed bean instance must not be
called.
| true |
| false | technology | active | true |
JSF:SPEC:82.3 | 5 | 4.1 |
Methods on managed beans declared to be in request, session, or
application scope, annotated with @PreDestroy, must be called by
the JSF implementation before the bean is removed from its scope
or before the scope itself is destroyed, whichever comes first.
This annotation must be supported in all cases where the above
@PostConstruct annotation is supported.
| true |
| false | technology | active | true |
JSF:SPEC:82.4 | 5 | 4.1 |
If the method throws an unchecked exception, the JSF
implementation may log it, but the exception must not otherwise
alter the execution.
| true |
| false | technology | active | true |
JSF:SPEC:83 | 6 | 1.1 |
The JSF implementation must ensure that the Application instance
for the current web application is available via this method, as
a convenient alternative to lookup via an ApplicationFactory.
| true |
| false | technology | active | true |
JSF:SPEC:84 | 6 | 1.2 |
Upon creation of the ELContext instance, the implementation must
take the following action:
| true |
| false | technology | active | false |
JSF:SPEC:84.1 | 6 | 1.2 |
Call the ELContext.putContext(java.lang.Class,
java.lang.Object) method on the instance, passing in
FacesContext.class and the this reference for the
FacesContext instance itself.
| true |
| false | technology | active | true |
JSF:SPEC:84.2 | 6 | 1.2 |
If the Collection returned by
javax.faces.Application.getELContextListeners() is
non-empty, create an instance of ELContextEvent and pass
it to each ELContextListener instance in the Collection
by calling the ELContextListener.contextCreated
(javax.el.ELContextEvent) method.
| true |
| false | technology | active | true |
JSF:SPEC:85 | 6 | 1.3 |
The ExternalContext abstract class must be implemented along
with the FacesContext class, and must be accessible via the
getExternalContext method in FacesContext.
| true |
| false | technology | active | true |
JSF:SPEC:86 | 6 | 1.3 |
The dispatch() must use a RequestDispatcher provided by the
application context object to incorporate content from a
specified context-relative resource. The redirect() method must
cause an HTTP Redirect to be sent to the client.
| true |
| false | technology | active | true |
JSF:SPEC:87 | 6 | 1.5 |
The getClientIdsWithMessages() method must return an Iterator
over the client identifiers for which at least one Message has
been queued. This method must be implemented so the clientIds
are returned in the order of calls to addMessage().
| true |
| false | technology | active | true |
JSF:SPEC:88 | 6 | 1.8 |
In some circumstances, it is possible that both renderResponse()
and responseComplete() might have been called for the request.
In this case, the JSF implementation must respect the
responseComplete() call (if it was made) before checking to see
if renderResponse() was called.
| true |
| false | technology | active | true |
JSF:SPEC:89 | 6 | 1.9 |
The getCurrentInstance() method may be called by any Java class
in the current web application to retrieve an instance of the
FacesContext for this request. The JSF implementation must
ensure that this value is set correctly before
FacesContextFactory returns a FacesContext instance,
and that the value is maintained in a thread-safe manner.
| true |
| false | technology | active | true |
JSF:SPEC:90 | 6 | 5 |
A single instance of javax.faces.context.FacesContextFactory
must be made available to each JSF-based web application
running in a servlet or portlet container.
| true |
| false | technology | active | true |
JSF:SPEC:91 | 7 | 1.1 |
The JSF implementation must provide a default implementation
ActionListener that performs the following functions:
| true |
| false | technology | active | false |
JSF:SPEC:91.1 | 7 | 1.1 |
The processAction() method must call
FacesContext.renderResponse() in order to bypass any
intervening lifecycle phases, once the method returns.
| true |
| false | technology | active | true |
JSF:SPEC:91.2 | 7 | 1.1 |
The processAction() method must next determine the
logical outcome of this event, as follows:
| true |
| false | technology | active | false |
JSF:SPEC:91.2.1 | 7 | 1.1 |
If the originating component has a non-null
action property, retrieve the MethodBinding and
call invoke() to perform the application-
specified processing in this action method. If
the method returns non-null, call toString() on
the result and use the value returned as the
logical outcome.
| true |
| false | technology | active | true |
JSF:SPEC:91.2.2 | 7 | 1.1 |
The default logical outcome is null.
| true |
| false | technology | active | true |
JSF:SPEC:92 | 7 | 1.7 |
If a call is made to setViewHandler() after the first time the
Render Response phase has executed, the call must be ignored by
the implementation.
| true |
| false | technology | active | true |
JSF:SPEC:93 | 7 | 1.8 |
The default implementation simply returns the ExpressionFactory
from the JSP container by calling JspFactory.getDefaultFactory()
.getJspApplicationContext(servletContext)
.getExpressionFactory().
| true |
| false | technology | active | true |
JSF:SPEC:94 | 7 | 1.10 |
The "public UIComponent createComponent(ValueExpression
componentExpression, FacesContext context,
String componentType);" method has the following behavior:
| true |
| false | technology | active | false |
JSF:SPEC:94.1 | 7 | 1.10 |
Call the getValue() method on the specified
ValueExpression, in the context of the specified
FacesContext. If this results in a non-null UIComponent
instance, return it as the value of this method.
| true |
| false | technology | active | true |
JSF:SPEC:94.2 | 7 | 1.10 |
If the getValue() call did not return a component
instance, create a new component instance of the
specified component type, pass the new component to the
setValue() method of the specified ValueExpression, and
return it.
| true |
| false | technology | active | true |
JSF:SPEC:95 | 7 | 4.2 |
The default NavigationHandler implementation must behave as if
it were performing the following algorithm (although optimized
implementation techniques may be utilized):
| true |
| false | technology | active | false |
JSF:SPEC:95.1 | 7 | 4.2 |
If the logical outcome value passed to the
handleNavigation() method is null, do not scan for
matching rules. This is an indication that the current
view should be redisplayed.
| true |
| false | technology | active | true |
JSF:SPEC:95.2 | 7 | 4.2 |
Find a <navigation-rule> element for which the
view identifier (of the view in the FacesContext
instance for the current request) matches the
<from-view-id> matching pattern of the
<navigation-rule>. Rule instances are considered
in the following order:
| true |
| false | technology | active | true |
JSF:SPEC:95.2.1 | 7 | 4.2 |
An exact match of the view identifier against a
<from-view-id> pattern that does not end with an
asterisk (“*”) character.
| true |
| false | technology | active | true |
JSF:SPEC:95.2.2 | 7 | 4.2 |
For <from-view-id> patterns that end with an
asterisk, an exact match on characters preceding the
asterisk against the prefix of the view id. If the
patterns for multiple navigation rules match, pick the
longest matching prefix first.
| true |
| false | technology | active | true |
JSF:SPEC:95.2.3 | 7 | 4.2 |
If there is a <navigation-rule> with a
<from-view-id> pattern of only an asterisk3, it
matches any view identifier.
| true |
| false | technology | active | true |
JSF:SPEC:95.3 | 7 | 4.2 |
From the <avigation-case> elements nested within the
matching <navigationrule> element, locate a matching
navigation case by matching the <from-action> and
<from-outcome> values against the corresponding parameter
values passed in to the handleNavigation() method. Navigation
cases are checked in the following order:
| true |
| false | technology | active | true |
JSF:SPEC:95.3.1 | 7 | 4.2 |
Cases specifying both a <from-action> value and a
<from-outcome> value are matched against the
action expression and outcome parameters passed to the
handleNavigation() method (both parameters must be not
null, and both must be equal to the corresponding
condition values, in order to match).
| true |
| false | technology | active | true |
JSF:SPEC:95.3.2 | 7 | 4.2 |
Cases that specify only a <from-outcome> value are
matched against the outcome parameter passed to the
handleNavigation() method (which must be not null,
and equal to the corresponding condition value, to
match).
| true |
| false | technology | active | true |
JSF:SPEC:95.3.3 | 7 | 4.2 |
Cases that specify only a <from-action> value are
matched against the action expression parameter passed
to the handleNavigation() method (which must be not
null, and equal to the corresponding condition value, to
match).
| true |
| false | technology | active | true |
JSF:SPEC:95.4 | 7 | 4.2 |
If a matching <navigation-case> element was located, and
the <redirect/> element was not specified in this
<navigation-case> (or the application is running in a
Portlet environment, where redirects are not possible), use the
<to-view-id> element of the matching case to request a new
UIViewRoot instance from the ViewHandler instance for this
application, and pass it to the setViewRoot() method of the
FacesContext instance for the current request. Then, exit the
algorithm.
| true |
| false | technology | active | true |
JSF:SPEC:95.5 | 7 | 4.2 |
If a matching <navigation-case> element was located, the
<redirect/> element was specified in this
<navigation-case>, and the application is not running in a
Portlet environment, use the <to-view-id> element of the
matching case to construct a context-relative path that
corresponds to that view id, cause the current response to
perform an HTTP redirect to this path, and call
responseComplete() on the FacesContext instance for the current
request.
| true |
| false | technology | active | true |
JSF:SPEC:95.6 | 7 | 4.2 |
If no matching <navigation-case> element was located,
return to Step 1 and find the next matching
<navigation-rule> element (if any). If there are no more
matching rule elements, return without changing the current
view.
| true |
| false | technology | active | true |
JSF:SPEC:96 | 7 | 5.2 |
The calculateCharacterEncoding() method must fulfill the following
responsibilities:
| true |
| false | technology | active | false |
JSF:SPEC:96.1 | 7 | 5.2 |
Examine the Content-Type request header. If it has a charset
parameter extract it and return it.
| true |
| false | technology | active | true |
JSF:SPEC:96.2 | 7 | 5.2 |
If not, test for the existence of a session by calling
getSession(false) on the ExternalContext for this FacesContext.
If the session is non-null, look in the Map returned by the
getSessionMap() method of the ExternalContext for a value under
the key given by the value of the symbolic constant
javax.faces.application.ViewHandler.CHARACTER_ENCODING_KEY. If a
value is found, convert it to a String and return it.
| true |
| false | technology | active | true |
JSF:SPEC:97 | 7 | 5.2 |
The calculateLocale() method must fulfill the following
responsibilities:
| true |
| false | technology | active | false |
JSF:SPEC:97.1 | 7 | 5.2 |
Attempt to match one of the locales returned by the getLocales()
method of the ExternalContext instance for this request, against
the supported locales for this application as defined in the
application configuration resources. Matching is performed by
the algorithm described in Section JSTL.8.3.2 of the JSTL
Specification. If a match is found, return the corresponding
Locale object.
| true |
| false | technology | active | true |
JSF:SPEC:97.2 | 7 | 5.2 |
Otherwise, if the application has specified a default locale in
the application configuration resources, return the
corresponding Locale object.
| true |
| false | technology | active | true |
JSF:SPEC:97.3 | 7 | 5.2 |
Otherwise, return the value returned by calling
Locale.getDefault().
| true |
| false | technology | active | true |
JSF:SPEC:98 | 7 | 5.2 |
The calculateRenderKitId() method must fulfill the following
responsibilities:
| true |
| false | technology | active | false |
JSF:SPEC:98.1 | 7 | 5.2 |
Return the value of the request parameter named by the symbolic
constant ResponseStateManager.RENDER_KIT_ID_PARAM if it is not
null.
| true |
| false | technology | active | true |
JSF:SPEC:98.2 | 7 | 5.2 |
Otherwise, return the value returned by
Application.getDefaultRenderKitId() if it is not null.
| true |
| false | technology | active | true |
JSF:SPEC:98.3 | 7 | 5.2 |
Otherwise, return the value specified by the symbolic constant
RenderKitFactory.HTML_BASIC_RENDER_KIT.
| true |
| false | technology | active | true |
JSF:SPEC:99 | 7 | 5.2 |
The createView() method must fulfill the following responsibilities:
| true |
| false | technology | active | false |
JSF:SPEC:99.1 | 7 | 5.2 |
Calculate the viewId that corresponds to this request, as
follows:
| true |
| false | technology | active | false |
JSF:SPEC:99.1.1 | 7 | 5.2 |
If prefix mapping (such as “/faces/*”) is used for
FacesServlet, the viewId is set from the extra path
information of the request URI.
| true |
| false | technology | active | true |
JSF:SPEC:99.1.2 | 7 | 5.2 |
If suffix mapping (such as “*.faces”) is used for
FacesServlet, the viewId is set from the servlet path
information of the request URI, after replacing the
suffix with the value of the context initialization
parameter named by the symbolic constant
ViewHandler.DEFAULT_SUFFIX_PARAM_NAME (if no such
context initialization parameter is present, use the
value of the symbolic constant
ViewHandler.DEFAULT_SUFFIX as the replacement suffix).
| true |
| false | technology | active | true |
JSF:SPEC:99.2 | 7 | 5.2 |
If no viewId could be identified, or the viewId is exactly equal
to the servlet mapping, call the redirect() method of the
ExternalContext instance for this request, passing the context
path of this web application.
| true |
| false | technology | active | true |
JSF:SPEC:99.3 | 7 | 5.2 |
Create a new UIViewRoot object instance
| true |
| false | technology | active | true |
JSF:SPEC:99.4 | 7 | 5.2 |
Conditionally copy the renderKitId and locale from any current
view for the current request (as described in the Javadocs for
createView()).
| true |
| false | technology | active | true |
JSF:SPEC:99.5 | 7 | 5.2 |
Return the newly created UIViewRoot.
| true |
| false | technology | active | true |
JSF:SPEC:100 | 7 | 5.2 |
The getActionURL() method must fulfill the following responsibilities:
| true |
| false | technology | active | false |
JSF:SPEC:100.1 | 7 | 5.2 |
If the specified viewId does not start with a “/”, throw
IllegalArgumentException.
| true |
| false | technology | active | true |
JSF:SPEC:100.2 | 7 | 5.2 |
If prefix mapping (such as “/faces/*”) is used for FacesServlet,
prepend the context path of the current application, and the
specified prefix, to the specified viewId and return the
completed value. For example “/cardemo/faces/chooseLocale.jsp”.
| true |
| false | technology | active | true |
JSF:SPEC:100.3 | 7 | 5.2 |
If suffix mapping (such as “*.faces”) is used for FacesServlet,
and the specified viewId ends with the specified suffix,
replacing the suffix with the value specified by the context
initialization parameter named by the symbolic constant
ViewHandler.DEFAULT_SUFFIX_NAME (if no such context
initialization parameter is present, use the value of the
symbolic constant ViewHandler.DEFAULT_SUFFIX as the replacement
suffix), prefix this value with the context path for the current
web application, and return the result. For example
“/cardemo/chooseLocale.faces”
| true |
| false | technology | active | true |
JSF:SPEC:101 | 7 | 5.2 |
The getResourceURL() method must fulfill the following responsibilities:
| true |
| false | technology | active | false |
JSF:SPEC:101.1 | 7 | 5.2 |
If the specified path starts with a “/”, prefix it with the
context path for the current web application, and return the
result.
| true |
| false | technology | active | true |
JSF:SPEC:101.2 | 7 | 5.2 |
Otherwise, return the specified path value unchanged.
| true |
| false | technology | active | true |
JSF:SPEC:102 | 7 | 5.2 |
The initView() method must fulfill the following responsibilities:
Call calculateCharacterEncoding(). If the result is non-null pass the
result to the setRequestCharacterEncoding() method of the
ExternalContext for this FacesContext.
| true |
| false | technology | active | true |
JSF:SPEC:103 | 7 | 5.2 |
The renderView() method must fulfill the following responsibilities:
| true |
| false | technology | active | false |
JSF:SPEC:103.1 | 7 | 5.2 |
If the current request is a ServletRequest, call the set()
method of the javax.servlet.jsp.jstl.core.Config class, passing
the current ServletRequest, the symbolic constant
Config.FMT_LOCALE, and the locale property of the specfied
UIViewRoot. This configures JSTL with the application’s
preferred locale for rendering this response.
| true |
| false | technology | active | true |
JSF:SPEC:103.2 | 7 | 5.2 |
Update the JSTL locale attribute in request scope so that JSTL
picks up the new locale from the UIViewRoot.
| true |
| false | technology | active | true |
JSF:SPEC:103.3 | 7 | 5.2 |
Create a wrapper around the current response from the
ExternalContext and set it as the new response in the
ExternalContext.
| true |
| false | technology | active | true |
JSF:SPEC:103.4 | 7 | 5.2 |
Execute the JSP page to build the view by treating the viewId as
a context-relative path(starting with a slash character), by
passing it to the dispatch() method of the ExternalContext
associated with this request.
| true |
| false | technology | active | true |
JSF:SPEC:103.5 | 7 | 5.2 |
Restore the original response into the ExternalContext.
| true |
| false | technology | active | true |
JSF:SPEC:103.6 | 7 | 5.2 |
If the FacesContext has a non-null ResponseWriter create a new
writer using its cloneWithWriter() method, passing the
response’s Writer as the argument.
| true |
| false | technology | active | true |
JSF:SPEC:103.7 | 7 | 5.2 |
Set the new ResponseWriter into the FacesContext, saving the
old one aside.
| true |
| false | technology | active | true |
JSF:SPEC:103.8 | 7 | 5.2 |
Call saveView() on the StateManager for this application, saving
the result in a thread-safe manner for use in the writeState()
method of ViewHandler.
| true |
| false | technology | active | true |
JSF:SPEC:103.9 | 7 | 5.2 |
Call startDocument() on the ResponseWriter.
| true |
| false | technology | active | true |
JSF:SPEC:103.10 | 7 | 5.2 |
Call encodeAll() on the UIViewRoot.
| true |
| false | technology | active | true |
JSF:SPEC:103.11 | 7 | 5.2 |
Output any content in the wrapped response from above to the
response, removing the wrapped response from the thread-safe
storage.
| true |
| false | technology | active | true |
JSF:SPEC:103.12 | 7 | 5.2 |
Call endDocument() on the ResponseWriter.
| true |
| false | technology | active | true |
JSF:SPEC:103.13 | 7 | 5.2 |
If the old ResponseWriter was not null, place the old
ResponseWriter back into the FacesContext.
| true |
| false | technology | active | true |
JSF:SPEC:104 | 7 | 5.2 |
The restoreView() method must fulfill the following responsibilities:
| true |
| false | technology | active | false |
JSF:SPEC:104.1 | 7 | 5.2 |
Calculate the viewId that corresponds to this request using the
“The ViewId derivation algorithm”.
| true |
| false | technology | active | true |
JSF:SPEC:104.2 | 7 | 5.2 |
If no viewId could be identified, return null.
| true |
| false | technology | active | true |
JSF:SPEC:104.3 | 7 | 5.2 |
Call the restoreView() method of the associated StateManager,
passing the FacesContext instance for the current request and
the calculated viewId, and return the returned UIViewRoot,
which may be null
| true |
| false | technology | active | true |
JSF:SPEC:105 | 7 | 5.2 |
The writeState() method must Obtain the saved state stored in a
thread-safe manner during the invocation of renderView() and pass it to
the writeState() method of the StateManager for this application.
| true |
| false | technology | active | true |
JSF:SPEC:106 | 7 | 6.3 |
The "public Object saveView(FacesContext context)" method causes the
tree structure and component state of the view contained in the argument
FacesContext to be collected, stored, and returned in a java.lang.Object
instance that must implement java.io.Serializable. If null is returned
from this method, there is no state tosave.
| true |
| false | technology | active | true |
JSF:SPEC:107 | 7 | 6.5 |
The "public boolean isSavingStateInClient(FacesContext context)" method
will Return true if and only if the value of the ServletContext init
parameter named by the value of the constant
StateManager.STATE_SAVING_METHOD_PARAM_NAME is equal to the value of the
constant STATE_SAVING_METHOD_CLIENT. Return false otherwise.
| true |
| false | technology | active | true |
JSF:SPEC:108 | 8 | 1.0 |
A JSF implementation must provide a default RenderKit instance
(named by the render kit identifier associated with the String constant
RenderKitFactory.HTML_BASIC_RENDER_KIT) that is utilized if no other
RenderKit is selected.
| true |
| false | technology | active | false |
JSF:SPEC:109 | 8 | 1.0 |
The RenderKit must support a value for the contentTypeList argument that
comes straight from the Accept HTTP header, and therefore requires
parsing according to the specification of the Accept header.
| true |
| false | technology | active | true |
JSF:SPEC:110 | 8 | 3.0 |
The "getState(FacesContext context)" implementation must inspect the
current request and return the component tree state Object passed to it
on a previous invocation of writeState().
| true |
| false | technology | active | true |
JSF:SPEC:111 | 8 | 3.0 |
The ResponseStateManager.RENDER_KIT_ID_PARAM identifier must not be
written if:
| true |
| false | technology | active | false |
JSF:SPEC:111.1 | 8 | 3.0 |
it is the default render kit identifier as returned by
Application.getDefaultRenderKitId().
| true |
| false | technology | active | true |
JSF:SPEC:111.2 | 8 | 3.0 |
the render kit identifier is the value of
RenderKitFactory.HTML_BASIC_RENDER_KIT and
Application.getDefaultRenderKitId() returns null.
| true |
| false | technology | active | true |
JSF:SPEC:112 | 8 | 4.0 |
A single instance of javax.faces.render.RenderKitFactory must be made
available to each JSFbased web application running in a servlet or
portlet container.
| true |
| false | technology | active | true |
JSF:SPEC:113 | 8 | 4.0 |
Every JSF implementation must provide a RenderKit instance for a default
render kit identifier that is designated by the String constant
RenderKitFactory.HTML_BASIC_RENDER_KIT.
| true |
| false | technology | active | true |
JSF:SPEC:114 | 8 | 4.0 |
The returned Iterator from getRenderKitIds() must include the value
specified by RenderKitFactory.HTML_BASIC_RENDER_KIT.
| true |
| false | technology | active | true |
JSF:SPEC:115 | 8 | 5.0 |
As with the standard components in the javax.faces.component package,
each HTML component implementation class must define a static public
final String constant named COMPONENT_TYPE, whose value is “javax.faces.”
concatenated with the class name.
| true |
| false | technology | active | true |
JSF:SPEC:116 | 8 | 5.0 |
HTML components, must not define a COMPONENT_FAMILY constant, or
override the getFamily() method they inherit from their superclass.
| true |
| false | technology | active | true |
JSF:SPEC:117 | 9 | 4.0 |
All JSF implementations must provide a tag library containing core
actions (described below) that are independent of a particular
RenderKit.The corresponding tag library descriptor must meet the
following requirements:
| true |
| false | technology | active | false |
JSF:SPEC:117.1 | 9 | 4.0 |
Must declare a tag library version (tlib-version) value of 1.2.
| true |
| false | technology | active | true |
JSF:SPEC:117.2 | 9 | 4.0 |
Must declare a URI (uri) value of http://java.sun.com/jsf/core.
| true |
| false | technology | active | true |
JSF:SPEC:117.3 | 9 | 4.0 |
Must be included in the META-INF directory of a JAR file
containing the corresponding implementation classes, suitable
for inclusion with a web application, such that the tag library
descriptor will be located automatically by the algorithm
described in Section 7.3 of the JavaServer Pages Specification
(version 2.1).
| true |
| false | technology | active | true |
JSF:SPEC:118 | 9 | 4.1 |
If the f:actionListener tag is not nested inside a UIComponent custom
action, or the UIComponent implementation class does not correctly
implement ActionSource, or the specified listener class does not
implement javax.faces.event.ActionListener, throw a JspException.
| true |
| false | technology | active | true |
JSF:SPEC:119 | 9 | 4.3 |
If the f:convertDateTime tag is not nested inside a UIComponent custom
action, or the UIComponent implementation class does not correctly
implement ValueHolder, throw a JspException
| true |
| false | technology | active | true |
JSF:SPEC:120 | 9 | 4.3 |
The implementation class for f:convertDateTime must meet the following
requirements:
| true |
| false | technology | active | false |
JSF:SPEC:120.1 | 9 | 4.3 |
Must extend javax.faces.webapp.ConverterTag.
| true |
| false | technology | active | true |
JSF:SPEC:120.2 | 9 | 4.3 |
createConverter() method must, if binding is non-null,
call getValue() on it to obtain a reference to the
Converter instance. If there is no exception thrown, and
binding.getValue() returned a non-null object that implements
javax.faces.convert.Converter, it must then cast the returned
instance to javax.faces.convert.DateTimeConverter and configure
its properties based on the specified attributes for this custom
action, and return the configured instance.
| true |
| false | technology | active | true |
JSF:SPEC:120.3 | 9 | 4.3 |
If the createConverter()method has an exception thrown, rethrow
the exception as a JspException.
| true |
| false | technology | active | true |
JSF:SPEC:120.4 | 9 | 4.3 |
If dateStyle is specified but timeStyle is not specified,
default to date.
| true |
| false | technology | active | true |
JSF:SPEC:120.5 | 9 | 4.3 |
If dateStyle is not specified but timeStyle is specified,
default to time.
| true |
| false | technology | active | true |
JSF:SPEC:120.6 | 9 | 4.3 |
If both dateStyle and timeStyle are specified, default to both.
| true |
| false | technology | active | true |
JSF:SPEC:121 | 9 | 4.4 |
If the f:convertNumber tag is not nested inside a UIComponent custom
action, or the UIComponent implementation class does not correctly
implement ValueHolder, throw a JspException.
| true |
| false | technology | active | true |
JSF:SPEC:122 | 9 | 4.4 |
The implementation class for the f:convertNumber action must meet the
following requirements:
| true |
| false | technology | active | false |
JSF:SPEC:122.1 | 9 | 4.4 |
Must extend javax.faces.webapp.ConverterTag.
| true |
| false | technology | active | true |
JSF:SPEC:122.2 | 9 | 4.4 |
The createConverter() method, If binding is non-null, call
binding.getValue() to obtain a reference to the Converter
instance. If there is no exception thrown, and
binding.getValue() returned a non-null object that implements
javax.faces.convert.Converter, it must then cast the returned
instance to javax.faces.convert.NumberConverter and configure
its properties based on the specified attributes for this custom
action, and return the configured instance.
| true |
| false | technology | active | true |
JSF:SPEC:122.3 | 9 | 4.4 |
If there was an exception thrown, rethrow the exception as a
JspException.
| true |
| false | technology | active | true |
JSF:SPEC:122.4 | 9 | 4.4 |
Call the createConverter() method of the Application
instance for this application, passing converter id
“javax.faces.Number”. If the binding attribute was also set,
store the converter instance by calling binding.setValue(). It
must then cast the returned instance to
javax.faces.convert.NumberConverter and configure its properties
based on the specified attributes for this custom action, and
return the configured instance.
| true |
| false | technology | active | true |
JSF:SPEC:123 | 9 | 4.5 |
If this tag is not nested inside a UIComponent custom action, or the
UIComponent implementation class does not correctly implement
ValueHolder, throw a JspException.
| true |
| false | technology | active | true |
JSF:SPEC:124 | 9 | 4.5 |
The implementation class for f:converter action must meet the following
requirements:
| true |
| false | technology | active | false |
JSF:SPEC:124.1 | 9 | 4.5 |
Must extend javax.faces.webapp.ConverterJspTag.
| true |
| false | technology | active | true |
JSF:SPEC:124.2 | 9 | 4.5 |
The createConverter() method must, If binding is non-null, call
binding.getValue() to obtain a reference to the Converter
instance. If there is no exception thrown, and
binding.getValue() returned a non-null object that implements
javax.faces.convert.Converter, register it by calling
setConverter(). If there was an exception thrown, rethrow
the exception as a JspException.
| true |
| false | technology | active | true |
JSF:SPEC:124.3 | 9 | 4.5 |
Use the converterId attribute if the converter instance could
not be created from the binding attribute. If the converterId
attribute is set, call the createConverter() method of the
Application instance for this application, passing converter id
specified by their converterId attribute. If the binding
attribute was also set, store the converter instance by calling
binding.setValue(). Register the converter instance by calling
setConverter(). If there was an exception thrown, rethrow the
exception as a JspException.
| true |
| false | technology | active | true |
JSF:SPEC:125 | 9 | 4.6 |
f:facet tag must be nested inside a UIComponent custom action.
Exactly one UIComponent custom action must be nested inside this custom action
(although the nested component custom action could itself have nested children).
| true |
| false | technology | active | true |
JSF:SPEC:126 | 9 | 4.6 |
Exactly one UIComponent custom action must be nested inside this custom
action(although the nested component custom action could itself have
nested children).
| true |
| false | technology | active | true |
JSF:SPEC:127 | 9 | 4.6 |
The implementation class of the f:facet tag must be, or extend,
javax.faces.webapp.FacetTag.
| true |
| false | technology | active | true |
JSF:SPEC:128 | 9 | 4.7 |
f:loadBundle tag must be nested inside an f:view tag custom action.
| true |
| false | technology | active | true |
JSF:SPEC:129 | 9 | 4.8 |
f:param tag must be nested inside a UIComponent custom action.
| true |
| false | technology | active | true |
JSF:SPEC:130 | 9 | 4.8 |
The implementation class for f:param tag this action must meet the
following requirements:
| true |
| false | technology | active | true |
JSF:SPEC:130.1 | 9 | 4.8 |
Must extend javax.faces.UIComponentELTag.
| true |
| false | technology | active | true |
JSF:SPEC:130.2 | 9 | 4.8 |
The getComponentType() method must return “Parameter”.
| true |
| false | technology | active | true |
JSF:SPEC:130.3 | 8 | 4.8 |
The getRendererType() method must return null.
| true |
| false | technology | active | true |
JSF:SPEC:131 | 9 | 4.9 |
f:phaseListener tag must be nested inside a UIViewRoot custom action.
| true |
| false | technology | active | true |
JSF:SPEC:132 | 9 | 4.9 |
The specified listener class for f:phaseListener must implement
javax.faces.event.PhaseListener.
| true |
| false | technology | active | true |
JSF:SPEC:133 | 9 | 4.9 |
type and/or binding must be specified for the phaseListener impl.
| true |
| false | technology | active | true |
JSF:SPEC:134 | 9 | 4.10 |
f:selectItem must be nested inside a UIComponent custom action
that creates a UISelectMany or UISelectOne component instance.
| true |
| false | technology | active | true |
JSF:SPEC:135 | 9 | 4.10 |
The implementation class for this action must meet the following
requirements:
| true |
| false | technology | active | false |
JSF:SPEC:135.1 | 9 | 4.10 |
Must extend javax.faces.UIComponentELTag.
| true |
| false | technology | active | true |
JSF:SPEC:135.2 | 9 | 4.10 |
The getComponentType() method must return “SelectItem”.
| true |
| false | technology | active | true |
JSF:SPEC:135.3 | 9 | 4.10 |
The getRendererType() method must return null.
| true |
| false | technology | active | true |
JSF:SPEC:136 | 9 | 4.11 |
Must be nested inside a UIComponent custom action that creates a
UISelectMany or UISelectOne component instance.
| true |
| false | technology | active | true |
JSF:SPEC:137 | 9 | 4.11 |
The implementation class for the f:selectItems action must meet
the following requirements:
| true |
| false | technology | active | true |
JSF:SPEC:137.1 | 9 | 4.11 |
Must extend javax.faces.UIComponentELTag.
| true |
| false | technology | active | true |
JSF:SPEC:137.2 | 9 | 4.11 |
The getComponentType() method must return
“javax.faces.SelectItems”.
| true |
| false | technology | active | true |
JSF:SPEC:137.3 | 9 | 4.11 |
The getRendererType() method must return null.
| true |
| false | technology | active | true |
JSF:SPEC:138 | 9 | 4.12 |
f:setPropertyActionListener must be nested inside a UIComponent custom
action.
| true |
| false | technology | active | true |
JSF:SPEC:139 | 9 | 4.12 |
The corresponding UIComponent implementation class for
f:setPropertyActionListener must implement ActionSource, and therefore
define a public addActionListener() method that accepts an
ActionListener parameter.
| true |
| false | technology | active | true |
JSF:SPEC:140 | | |
The tag implementation must only create and register the ActionListener
instance the first time the component for this tag is created
| true |
| false | technology | active | true |
JSF:SPEC:141 | 9 | 4.12 |
When the listener executes, call getValue() on the "value"
ValueExpression. Pass the result to a call to setValue() on the "target"
ValueExpression
| true |
| false | technology | active | true |
JSF:SPEC:142 | 9 | 4.12 |
This tag creates no output to the page currently being created. It is
used solely for the side effect of ActionListener creation and addition.
| true |
| false | technology | active | true |
JSF:SPEC:143 | 9 | 4.12 |
If this tag is not nested inside a UIComponent custom action, or the
UIComponent implementation class does not correctly implement
ActionSource, or the specified listener class does not implement
javax.faces.event.ActionListener, throw a JspException.
| true |
| false | technology | active | true |
JSF:SPEC:144 | 9 | 4.13 |
f:subview must be nested inside a f:view custom action although this
custom action might be in a page that is including the page containing
the f:subview custom action.
| true |
| false | technology | active | true |
JSF:SPEC:145 | 9 | 4.13 |
f:subview must not contain an f:view custom action.
| true |
| false | technology | active | true |
JSF:SPEC:146 | 9 | 4.13 |
f:subview must have an id attribute whose value is unique within the
scope of the parent naming container.
| true |
| false | technology | active | true |
JSF:SPEC:147 | 9 | 4.13 |
The implementation class for f:subview must extend
javax.faces.UIComponentELTag.
| true |
| false | technology | active | true |
JSF:SPEC:148 | 9 | 4.13 |
The implementation class's getComponentType() method must return
“NamingContainer”.
| true |
| false | technology | active | true |
JSF:SPEC:149 | 9 | 4.13 |
The implementation class's getRendererType() method must return null.
| true |
| false | technology | active | true |
JSF:SPEC:150 | 9 | 4.14 |
If the f:validateDoubleRange tag is not nested inside a UIComponent
custom action, or the UIComponent implementation class does not
correctly implement EditableValueHolder throw a JspException.
| true |
| false | technology | active | true |
JSF:SPEC:151 | 9 | 4.14 |
The implementation class for the f:validateDoubleRange action must meet
the following requirements:
| true |
| false | technology | active | false |
JSF:SPEC:151.1 | 9 | 4.14 |
Must extend javax.faces.webapp.ValidatorTag.
| true |
| false | technology | active | true |
JSF:SPEC:151.2 | 9 | 4.14 |
The createValidator() method must, If binding is non-null,
create a ValueBinding by invoking
Application.createValueExpression() with binding as the
expression argument, and Validator.class as the expectedType
argument.
| true |
| false | technology | active | true |
JSF:SPEC:151.3 | 9 | 4.14 |
use the validatorId if the validator instance could not be
created from the binding attribute.
| true |
| false | technology | active | true |
JSF:SPEC:151.4 | 9 | 4.14 |
If there is an exception thrown, rethrow the exception as a
JspException.
| true |
| false | technology | active | true |
JSF:SPEC:152 | 9 | 4.15 |
If the f:validateLength tag is not nested inside a UIComponent custom
action, or the UIComponent implementation class does not correctly
implement EditableValueHolder, throw a JspException.
| true |
| false | technology | active | true |
JSF:SPEC:153 | 9 | 4.15 |
The implementation class for this action must meet the following
requirements:
| true |
| false | technology | active | false |
JSF:SPEC:153.1 | 9 | 4.15 |
Must extend javax.faces.webapp.ValidatorTag.
| true |
| false | technology | active | true |
JSF:SPEC:153.2 | 9 | 4.15 |
If binding is non-null, create a ValueExpression by invoking
Application.createValueExpression() with binding as the
expression argument, and Validator.
| true |
| false | technology | active | true |
JSF:SPEC:153.3 | 9 | 4.15 |
Use the validatorId if the validator instance could not be
created from the binding attribute. Call the createValidator()
method of the Application instance for this application,
| true |
| false | technology | active | true |
JSF:SPEC:153.4 | 9 | 4.15 |
If there was an exception thrown, rethrow the exception
as a JspException.
| true |
| false | technology | active | true |
JSF:SPEC:154 | 9 | 4.16 |
f:validateLongRange must be nested inside a EditableValueHolder custom
action whose value is (or is convertible to) a long.
| true |
| false | technology | active | true |
JSF:SPEC:155 | 9 | 4.16 |
f:validateLongRange must specify either the maximum attribute, the
minimum attribute, or both.
| true |
| false | technology | active | true |
JSF:SPEC:156 | 9 | 4.16 |
For f:validateLongRange if both limits are specified, the maximum limit
must be greater than the minimum limit.
| true |
| false | technology | active | true |
JSF:SPEC:157 | 9 | 4.16 |
If the f:validateLongRange tag is not nested inside a UIComponent custom
action, or the UIComponent implementation class does not correctly
implement EditableValueHolder, throw a JspException
| true |
| false | technology | active | true |
JSF:SPEC:158 | 9 | 4.16 |
The implementation class for the f:validateLongRange action must meet
the following requirements:
| true |
| false | technology | active | false |
JSF:SPEC:158.1 | 9 | 4.16 |
Must extend javax.faces.webapp.ValidatorTag.
| true |
| false | technology | active | true |
JSF:SPEC:158.2 | 9 | 4.16 |
The createValidator() method must, if binding is non-null,
create a ValueExpression by invoking
Application.createValueExpression() with binding as the
expression argument, and Validator.
| true |
| false | technology | active | true |
JSF:SPEC:158.3 | 9 | 4.16 |
The createValidator() method must, use the validatorId if the
validator instance could not be created from the binding
attribute.
| true |
| false | technology | active | true |
JSF:SPEC:158.4 | 9 | 4.16 |
If there is an exception thrown, rethrow the exception as a
JspException
| true |
| false | technology | active | true |
JSF:SPEC:159 | 9 | 4.17 |
f:validator tag must be nested inside a UIComponent custom action whose
component class implements EditableValueHolder.
| true |
| false | technology | active | true |
JSF:SPEC:160 | 9 | 4.17 |
validatorId and/or binding must be specified.
| true |
| false | technology | active | true |
JSF:SPEC:161 | 9 | 4.17 |
If the f:validator tag is not nested inside a UIComponent custom action,
or the UIComponent implementation class does not correctly implement
EditableValueHolder throw a JspException.
| true |
| false | technology | active | true |
JSF:SPEC:162 | 9 | 4.17 |
The implementation class for the f:validator action must meet the
following requirements:
| true |
| false | technology | active | false |
JSF:SPEC:162.1 | 9 | 4.17 |
Must extend javax.faces.webapp.ValidatorJspTag.
| true |
| false | technology | active | true |
JSF:SPEC:162.2 | 9 | 4.17 |
The createValidator() method must, if binding is non-null,
call binding.getValue() to obtain a reference to the
Validator instance.
| true |
| false | technology | active | true |
JSF:SPEC:162.3 | 9 | 4.17 |
The createValidator() method must, use the validatorId attribute
if the validator instance could not be created from the binding
attribute.
| true |
| false | technology | active | true |
JSF:SPEC:162.4 | 9 | 4.17 |
The createValidator() method must, If there was an exception
thrown, rethrow the exception as a JspException.
| true |
| false | technology | active | true |
JSF:SPEC:163 | 9 | 4.18 |
f:valueChangeListener must be nested inside a UIComponent custom action.
| true |
| false | technology | active | true |
JSF:SPEC:164 | 9 | 4.18 |
The corresponding UIComponent implementation class for
f:valueChangeListener must implement EditableValueHolder, and therefore
define a public addValueChangeListener() method that accepts an
ValueChangeListener parameter.
| true |
| false | technology | active | true |
JSF:SPEC:165 | 9 | 4.18 |
The specified listener class for f:valueChangeListener must implement
javax.faces.event.ValueChangeListener.
| true |
| false | technology | active | true |
JSF:SPEC:166 | 9 | 4.18 |
type and/or binding must be specified.
| true |
| false | technology | active | true |
JSF:SPEC:167 | 9 | 4.18 |
If this tag is not nested inside a UIComponent custom action, or the
UIComponent implementation class does not correctly implement
EditableValueHolder, or the specified listener class does not implement
javax.faces.event.ValueChangeListener, throw a JspException.
| true |
| false | technology | active | true |
JSF:SPEC:168 | 9 | 4.19 |
f:verbatim must be implemented as a UIComponentBodyTag.
| true |
| false | technology | active | true |
JSF:SPEC:169 | 9 | 4.19 |
The rendererType property for the f:verbatim tag's UIOutput component
must be set to “javax.faces.Text”
| true |
| false | technology | active | true |
JSF:SPEC:170 | 9 | 4.19 |
The f:verbatim tag's transient property must be set to true.
| true |
| false | technology | active | true |
JSF:SPEC:171 | 9 | 4.19 |
The value (or value binding, if it is an expression) of the escape
attribute must be passed on to the renderer as the value the escape
attribute on the UIOutput component.
| true |
| false | technology | active | true |
JSF:SPEC:172 | 9 | 4.20 |
Any JSP-created response using actions from the JSF Core Tag Library,
as well as actions extending javax.faces.webapp.UIComponentELTag from
other tag libraries, must be nested inside an occurrence of the
f:view action.
| true |
| false | technology | active | true |
JSF:SPEC:173 | 9 | 4.20 |
The implementation class for the f:view action must meet the following
requirements:
| true |
| false | technology | active | false |
JSF:SPEC:173.1 | 9 | 4.20 |
Must extend javax.faces.UIComponentBodyTag.
| true |
| false | technology | active | true |
JSF:SPEC:173.2 | 9 | 4.20 |
The getComponentType() method must return “ViewRoot”.
| true |
| false | technology | active | true |
JSF:SPEC:173.3 | 9 | 4.20 |
The getRendererType() method must return null.
| true |
| false | technology | active | true |
JSF:SPEC:174 | 9 | 5.0 |
The tag library descriptor for this tag library must meet the following
requirements:
| true |
| false | technology | active | false |
JSF:SPEC:174.1 | 9 | 5.0 |
Must declare a tag library version (tlib-version) value of
1.2.
| true |
| false | technology | active | true |
JSF:SPEC:174.2 | 9 | 5.0 |
Must declare a URI tag value of
http://java.sun.com/jsf/html.
| true |
| false | technology | active | true |
JSF:SPEC:174.3 | 9 | 5.0 |
Must be included in the META-INF directory of a JAR file
containing the corresponding implementation classes, suitable
for inclusion with a web application, such that the tag library
descriptor will be located automatically by the algorithm
described in Section 7.3 of the JavaServer Pages Specification
(version 1.2).
| true |
| false | technology | active | true |
JSF:SPEC:175 | 9 | 5.0 |
The custom actions defined in this tag library must specify the
following return values for the getComponentType() and getRendererType()
methods, respectively:
| true |
| false | technology | active | true |
JSF:SPEC:175.1 | 9 | 5.0 |
Action column:
getComponentType()- returns javax.faces.Column
getRendererType()- returns (null)*
| true |
| false | technology | active | true |
JSF:SPEC:175.2 | 9 | 5.0 |
Action commandButton:
getComponentType()- returns javax.faces.HtmlCommandButton
getRendererType()- returns javax.faces.Button
| true |
| false | technology | active | true |
JSF:SPEC:175.3 | 9 | 5.0 |
Action commandLink:
getComponentType()- returns javax.faces.HtmlCommandLink
getRendererType()- returns javax.faces.Link
| true |
| false | technology | active | true |
JSF:SPEC:175.4 | 9 | 5.0 |
Action dataTable:
getComponentType()- returns javax.faces.HtmlDataTable
getRendererType()- returns javax.faces.Table
| true |
| false | technology | active | true |
JSF:SPEC:175.5 | 9 | 5.0 |
Action form:
getComponentType()- returns javax.faces.HtmlForm
getRendererType()- returns javax.faces.Form
| true |
| false | technology | active | true |
JSF:SPEC:175.6 | 9 | 5.0 |
Action graphicImage:
getComponentType()- returns javax.faces.HtmlGraphicImage
getRendererType()- returns javax.faces.Image
| true |
| false | technology | active | true |
JSF:SPEC:175.7 | 9 | 5.0 |
Action inputHidden:
getComponentType()- returns javax.faces.HtmlInputHidden
getRendererType()- returns javax.faces.Hidden
| true |
| false | technology | active | true |
JSF:SPEC:175.8 | 9 | 5.0 |
Action inputSecret:
getComponentType()- returns javax.faces.HtmlInputSecret
getRendererType()- returns javax.faces.Secret
| true |
| false | technology | active | true |
JSF:SPEC:175.9 | | |
Action inputSecret:
getComponentType()- returns javax.faces.HtmlInputSecret
getRendererType()- returns javax.faces.Secret
| true |
| false | technology | active | true |
JSF:SPEC:175.10 | 9 | 5.0 |
Action inputText:
getComponentType()- returns javax.faces.HtmlInputText
getRendererType()- returns javax.faces.Text
| true |
| false | technology | active | true |
JSF:SPEC:175.11 | 9 | 5.0 |
Action inputTextarea:
getComponentType()- returns javax.faces.HtmlInputTextarea
getRendererType()- returns javax.faces.Textarea
| true |
| false | technology | active | true |
JSF:SPEC:175.12 | 9 | 5.0 |
Action message:
getComponentType()- returns javax.faces.HtmlMessage
getRendererType()- returns javax.faces.Message
| true |
| false | technology | active | true |
JSF:SPEC:175.13 | 9 | 5.0 |
Action messages:
getComponentType()- returns javax.faces.HtmlMessages
getRendererType()- returns javax.faces.Messages
| true |
| false | technology | active | true |
JSF:SPEC:175.14 | 9 | 5.0 |
Action outputFormat:
getComponentType()- returns javax.faces.HtmlOutputFormat
getRendererType()- returns javax.faces.Format
| true |
| false | technology | active | true |
JSF:SPEC:175.15 | 9 | 5.0 |
Action outputLabel:
getComponentType()- returns javax.faces.HtmlOutputLabel
getRendererType()- returns javax.faces.Label
| true |
| false | technology | active | true |
JSF:SPEC:175.16 | 9 | 5.0 |
Action outputLink:
getComponentType()- returns javax.faces.HtmlOutputLink
getRendererType()- returns javax.faces.Link
| true |
| false | technology | active | true |
JSF:SPEC:175.17 | 9 | 5.0 |
Action outputText:
getComponentType()- returns javax.faces.HtmlOutputText
getRendererType()- returns javax.faces.Text
| true |
| false | technology | active | true |
JSF:SPEC:175.18 | 9 | 5.0 |
Action panelGrid:
getComponentType()- returns javax.faces.HtmlPanelGrid
getRendererType()- returns javax.faces.Grid
| true |
| false | technology | active | true |
JSF:SPEC:175.19 | 9 | 5.0 |
Action panelGroup:
getComponentType()- returns javax.faces.HtmlPanelGroup
getRendererType()- returns javax.faces.Group
| true |
| false | technology | active | true |
JSF:SPEC:175.20 | 9 | 5.0 |
Action selectBooleanCheckbox:
getComponentType()-
returns javax.faces.HtmlSelectBooleanCheckbox
getRendererType()- returns javax.faces.Checkbox
| true |
| false | technology | active | true |
JSF:SPEC:175.21 | 9 | 5.0 |
Action selectManyListbox:
getComponentType()- returns javax.faces.HtmlSelectManyListbox
getRendererType()- returns javax.faces.Listbox
| true |
| false | technology | active | true |
JSF:SPEC:175.22 | 9 | 5.0 |
Action selectManyMenu:
getComponentType()- returns javax.faces.HtmlSelectManyMenu
getRendererType()- returns javax.faces.Menu
| true |
| false | technology | active | true |
JSF:SPEC:175.23 | 9 | 5.0 |
Action selectOneListbox:
getComponentType()- returns javax.faces.HtmlSelectOneListbox
getRendererType()- returns javax.faces.Listbox
| true |
| false | technology | active | true |
JSF:SPEC:175.24 | 9 | 5.0 |
Action selectOneMenu:
getComponentType()- returns javax.faces.HtmlSelectOneMenu
getRendererType()- returns javax.faces.Menu
| true |
| false | technology | active | true |
JSF:SPEC:175.25 | 9 | 5.0 |
Action selectOneRadio:
getComponentType()- returns javax.faces.HtmlSelectOneRadio
getRendererType()- returns javax.faces.Radio
| true |
| false | technology | active | true |
JSF:SPEC:176 | 9 | 5.0 |
The tag library descriptor for this tag library (and the corresponding
tag handler implementation classes) must meet the following
requirements:
| true |
| false | technology | active | true |
JSF:SPEC:176.1 | 9 | 5.0 |
The attributes for the tags, both in the TLD and in the
associated tag handlers, must conform exactly to the type, name,
and description given in the TLDDocs for the
html_basic tag library.
| true |
| false | technology | active | true |
JSF:SPEC:176.2 | 9 | 5.0 |
If the type of the attribute is javax.el.MethodExpression, the
TLD for the attribute must contain a <deferred-method>
with a nested <method-signature>, inside of which is the
method signature for that MethodExpression, as given in the
TLDDocs. The JavaBeans setter method in the tag handler for the
tag must be of type javax.el.MethodExpression.
| true |
| false | technology | active | true |
JSF:SPEC:176.3 | 9 | 5.0 |
Any attributes listed in the TLDDocs with a request-time value
of true must specify an <rtexprvalue> of true in the TLD.
| true |
| false | technology | active | true |
JSF:SPEC:176.4 | 9 | 5.0 |
The following action must be taken to handle the value of the
converter property. If isLiteralText() on the converter property
returns true, get the value of the property and treat it as a
converterId by passing it as the argument to the
createConverter() method of the Application instance for this
webapp, then pass the created Converter to the setConverter()
method of the component for this tag. If isLiteralText() on the
converter property returns false, call setValueExpression() on
the component, passing “converter” as the name of the
ValueExpression and the ValueExpression instance as the value.
| true |
| false | technology | active | true |
JSF:SPEC:176.5 | 9 | 5.0 |
For a non-null action attribute on custom actions related to
ActionSource2 components (commandButton, commandLink), the
setProperties() method of the tag handler implementation class
must pass the value of the action attribtue, which is a
MethodExpression, to the component’s setActionExpression()
method.
| true |
| false | technology | active | true |
JSF:SPEC:176.6 | 9 | 5.0 |
For other non-null attributes that correspond to
MethodExpression attributes on the underlying components
(actionListener, validator, valueChangeListener), the
setProperties() method of the tag handler implementation class
must store that instance as the value of the corresponding
component property.
| true |
| false | technology | active | true |
JSF:SPEC:176.7 | 9 | 5.0 |
For any non-null id, scope, or var attribute, the
setProperties() method of the tag handler implementation class
must simply set the value of the corresponding component
attribute.
| true |
| false | technology | active | true |
JSF:SPEC:176.8 | 9 | 5.0 |
For all other non-null attributes, the setProperties() of the
tag handler implementation class method must, if the
attribute.isLiteralText() returns true, set the corresponding
attribute on the underlying component (after performing any
necessary type conversion). Otherwise, call the
setValueExpression() method on the underlying component,
passing the attribute name and the ValueExpression‘ instance as
parameters.
| true |
| false | technology | active | true |
JSF:SPEC:177 | 10 | 3.1 |
Facelet pages are authored in XHTML. The runtime must support all XHTML
pages that confirm with the XHTML-1.0-Transitional DTD, as described at
http://www.w3.org/TR/xhtml1/#a_dtd_XHTML-1.0-Transitional
| true |
| false | technology | active | true |
JSF:SPEC:178 | 10 | 3.2 |
The runtime must support the following syntax for making the tags in a
tag library available for use in a Facelet page.
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:prefix="namespace_uri">
| true |
| false | technology | active | true |
JSF:SPEC:179 | 10 | 3.2 |
The runtime must support the following syntax for making the tags in a
tag library available for use in a Facelet page
| true |
| false | technology | active | false |
JSF:SPEC:179.1 | 10 | 3.2 |
Via declaration in the web.xml, as specified in Section11.1.3
“Application Configuration Parameters”
| true |
| false | technology | active | true |
JSF:SPEC:179.2 | 10 | 3.2 |
Via auto discovery by placing the tag library discriptor file
within a jar on the web application classpath, naming the
file so that it ends with “.taglib.xml”, without the quotes,
and placing the file in the META-INF directory in the jar file
| true |
| false | technology | active | true |
JSF:SPEC:180 | 10 | 3.2 |
Failure to parse, process and otherwise interpret any of the tag
library files discovered must cause the application to fail to deploy
and must cause an informative error message to be logged.
| true |
| false | technology | active | true |
JSF:SPEC:181 | 10 | 3.3.1 |
The runtime must support the following two ways of declaring a
composite component library.
| true |
| false | technology | active | false |
JSF:SPEC:181.1 | 10 | 3.3.1 |
If a facelet taglibrary is declared in an XHTML page with a
namespace starting with the string
“http://java.sun.com/jsf/composite/” (without the quotes),
the remainder of the namespace declaration is taken as the name
of a resource library as described in Section2.6.1.4 “Libraries
of Localized and Versioned Resources
| true |
| false | technology | active | true |
JSF:SPEC:181.2 | 10 | 3.3.1 |
the runtime must also support the <composite-library-name>
element.
| true |
| false | technology | active | true |
JSF:SPEC:182 | 10 | 3.3.2 |
If, during the process of building the view, the facelet runtime
encounters an element in the page using the prefix for the namespace of
a composite component library, the runtime must create a Resource
instance with a library property equal to the library name derived in
Section10.3.3.1 “Declaring a composite component library for use in a
Facelet page”and call the variant of application.createComponent() that
takes a Resource.
| true |
| false | technology | active | true |
JSF:SPEC:183 | 10 | 3.3.2 |
After causing the top level component to be instantiated, the runtime
must create a UIComponent with component- family of javax.faces.Panel
and renderer-type javax.faces.Group to be installed as a facet of the
top level component under the facet name
UIComponent.COMPOSITE_FACET_NAME.
| true |
| false | technology | active | true |
JSF:SPEC:184 | 10 | 3.3.3 |
The runtime must support the use of composite: tag library in the
defining page pointed to by the Resource derived as specified in
Section10.3.3.2 “Creating an instance of a top level component”
| true |
| false | technology | active | true |
JSF:SPEC:185 | 10 | 3.3.3 |
The runtime must ensure that all UIComponent children in the composite
component definition within the defining page are placed as children of
the UIComponent.COMPOSITE_FACET_NAME facet of the top level facet
| true |
| false | technology | active | true |
JSF:SPEC:186 | 10 | 3.3.3 |
The runtime must ensure that all such attributes are copied to the
attributes map of the top level component instance in the following
manner.
| true |
| false | technology | active | false |
JSF:SPEC:186.1 | 10 | 3.3.3 |
Obtain a reference to the ExpressionFactory, for discussion
called expressionFactory.
| true |
| false | technology | active | true |
JSF:SPEC:186.2 | 10 | 3.3.3 |
Let the value of the attribute in the using page be value.
| true |
| false | technology | active | true |
JSF:SPEC:186.3 | 10 | 3.3.3 |
If value is “id” or “binding” without the quotes, skip to the
next attribute.
| true |
| false | technology | active | true |
JSF:SPEC:186.4 | 10 | 3.3.3 |
f the value of the attribute starts with “#{“ (without the
quotes) call expressionFactory.createValueExpression(elContext,
value, Object.class)
| true |
| false | technology | active | true |
JSF:SPEC:186.5 | 10 | 3.3.3 |
If the value of the attribute does not start with “#{“, call
expressionFactory.createValueExpression(value, Object.class)
| true |
| false | technology | active | true |
JSF:SPEC:186.6 | 10 | 3.3.3 |
If there already is a key in the map for value, inspect the type
of the value at that key. If the type is MethodExpression take
no action.
| true |
| false | technology | active | true |
JSF:SPEC:187 | 10 | 3.3.3 |
If the type of the attribute is a MethodExpression, the code that
takes the value of the attribute and creates an actual
MethodExpression instance around it must take the following special
action.
| true |
| false | technology | active | false |
JSF:SPEC:187.1 | 10 | 3.3.3 |
Obtain a reference to the current composite component by calling
UIComponent.getCurrentCompositeComponent().
| true |
| false | technology | active | true |
JSF:SPEC:187.2 | 10 | 3.3.3 |
Look in the attribute of the component for a key under the value
attrName.
| true |
| false | technology | active | true |
JSF:SPEC:187.3 | 10 | 3.3.3 |
There must be a value and it must be of type MethodExpression.
If either of these conditions are false allow the ensuing
exception to be thrown.
| true |
| false | technology | active | true |
JSF:SPEC:187.4 | 10 | 3.3.3 |
Call invoke() on the discovered MethodExpression, passing the
arguments passed to our invoke() method.
| true |
| false | technology | active | true |
JSF:SPEC:188 | 10 | 4.1.1 |
The String value for identifiers specified for execute and render may be
specified as a search expression as outlined in the JavaDocs for
UIComponent.findComponent.The implementation must resolve these
identifiers as specified for UIComponent.findComponent.
| true |
| false | technology | active | true |
JSF:SPEC:189 | 10 | 4.1.1 |
A TagAttibuteException must be thrown if an “event” attribute value is
specified that does not match the events supported by the component
type.
| true |
| false | technology | active | true |
JSF:SPEC:190 | 10 | 4.1.1 |
The event attribute that is specified, must be one of the events
returned from the ClientBehaviorHolder component implementation of
ClientBehaviorHolder.getEventNames.
| true |
| false | technology | active | true |
JSF:SPEC:191 | 10 | 4.1.1 |
If an event is not specified the value returned from the component
implementation of ClientBehaviorHolder.getDefaultEventName must be used.
If the event is still not determined, a TagAttributeException must be
thrown.
| true |
| false | technology | active | true |
JSF:SPEC:192 | 10 | 4.1.1 |
If an event is not specified the value returned from the component
implementation of ClientBehaviorHolder.getDefaultEventName must be used.
If the event is still not determined, a TagAttributeException must be
thrown.
| true |
| false | technology | active | true |
JSF:SPEC:193 | 10 | 4.1.1 |
The "Description" tag handler must create an instance of
javax.faces.component.behavior.AjaxBehavior instance using the tag
attribute values.
| true |
| false | technology | active | true |
JSF:SPEC:194 | 10 | 4.1.1 |
If teh "Description" tag is nested within a single ClientBehaviorHolder
component:
| true |
| false | technology | active | false |
JSF:SPEC:194.1 | 10 | 4.1.1 |
If the event attribute is not specified, determine the event by
calling the component’s getDefaultEventName method. If that
returns null, throw an exception.
| true |
| false | technology | active | true |
JSF:SPEC:194.2 | 10 | 4.1.1 |
If the event attribute is specified, ensure that it is a valid
event - that is one of the events contained in the Collection
returned from getEventNames method. If it does not exist in this
Collection, throw an exception.
| true |
| false | technology | active | true |
JSF:SPEC:194.3 | 10 | 4.1.1 |
Add the AjaxBehavior to the component by calling the addBehavior
method, passing the event and AjaxBehavior instance.
| true |
| false | technology | active | true |
JSF:SPEC:195 | 10 | 5 |
When the VDL calls for the creation of a UIComponent instance, after
calling Application.createComponent() to instantiate the component
instance, and after calling setRendererType() on the newly instantiated
component instance, the following action must be taken.
| true |
| false | technology | active | false |
JSF:SPEC:195.1 | 10 | 4.1.1 |
Obtain the Renderer for this component. If no Renderer is
present, ignore the following steps.
| true |
| false | technology | active | true |
JSF:SPEC:195.2 | 10 | 4.1.1 |
Call getClass() on the Renderer instance and inspect if the
ListenerFor annotation is present. If so, inspect if the
Renderer instance implements ComponentSystemEventListener. If
neither of these conditions are true, ignore the following
steps.
| true |
| false | technology | active | true |
JSF:SPEC:195.3 | 10 | 4.1.1 |
Obtain the value of the systemEventClass() property of the
ListenerFor annotation on the Renderer instance.
| true |
| false | technology | active | true |
JSF:SPEC:195.4 | 10 | 4.1.1 |
Call subscribeToEvent() on the UIComponent instance from which
the Renderer instance was obtained, using the systemEventClass
from the annotation as the second argument, and the Renderer
instance as the third argument.
| true |
| false | technology | active | true |
JSF:SPEC:196 | 11 | 1.1 |
This servlet must be defined, in the deployment descriptor of an
application that wishes to employ this portable mechanism.
The servlet name, denoted as faces-servlet-name above, may be any
desired value; however, the same value must be used as teh servlet-name
in the servlet mapping.
| true |
| false | technology | active | true |
JSF:SPEC:197 | 11 | 1.2 |
JSF implementations must support web application that define a
<servlet-mapping> that maps any valid url-pattern to the
FacesServlet.
| true |
| false | technology | active | true |
JSF:SPEC:198 | 11 | 1.3 |
JSF implementations are required to support the following application
configuration parameter names:
| true |
| false | technology | active | false |
JSF:SPEC:198.1 | 11 | 1.3 |
javax.faces.CONFIG_FILES -- Comma-delimited list of
context-relative resource paths under which the JSF
implementation will look for application configuration
resources before loading a configuration resource named
“/WEB-INF/faces-config.xml”
| true |
| false | technology | active | true |
JSF:SPEC:198.2 | 11 | 1.3 |
javax.faces.DEFAULT_SUFFIX -- The default suffix for
extension-mapped resources that contain JSF components. If not
specified, the default value “.jsp” must be used.
| true |
| false | technology | active | true |
JSF:SPEC:198.3 | 11 | 1.3 |
javax.faces.FACELETS_SUFFIX -- Allow the web application to
define an alternate suffix for Facelet based XHTML pages
containing JSF content. See the javadocs for the symbolic
constant ViewHandler.FACELETS_SUFFIX_PARAM_NAME for the
complete specification.
| true |
| false | technology | active | true |
JSF:SPEC:198.4 | 11 | 1.3 |
javax.faces.LIFECYCLE_ID -- Lifecycle identifier of the
Lifecycle instance to be used when processing JSF requests for
this web application. If not specified, the JSF default
instance, identified by LifecycleFactory.DEFAULT_LIFECYCLE, must
be used.
| true |
| false | technology | active | true |
JSF:SPEC:198.5 | 11 | 1.3 |
javax.faces.STATE_SAVING_METHOD -- The location where state
information is saved. Valid values are “server” (typically saved
in HttpSession) and “client (typically saved as a hidden field
in the subsequent form submit). If not specified, the default
value “server” must be used.
| true |
| false | technology | active | true |
JSF:SPEC:198.6 | 11 | 1.3 |
javax.faces.PARTIAL_STATE_SAVING --The ServletContext init
parameter consulted by the runtime to determine if the partial
state saving mechanism should be used. If undefined, the runtime
must determine the version level of the application.
| true |
| false | technology | active | true |
JSF:SPEC:198.6.1 | 11 | 1.3 |
For applications versioned at 1.2 and under, the runtime
must not use the partial state saving mechanism.
| true |
| false | technology | active | true |
JSF:SPEC:198.6.2 | 11 | 1.3 |
For applications versioned at 2.0 and above, the runtime
must use the partial state saving mechanism.
| true |
| false | technology | active | true |
JSF:SPEC:198.7 | 11 | 1.3 |
javax.faces.FULL_STATE_SAVING_VIEW_IDS -- The runtime must
interpret the value of this parameter as a comma separated list
of view IDs, each of which must have their state saved using the
state saving mechanism specified in JSF 1.2.
| true |
| false | technology | active | true |
JSF:SPEC:198.8 | 11 | 1.3 |
javax.faces.PROJECT_STAGE -- A human readable string describing
where this particular JSF application is in the software
development lifecycle.
| true |
| false | technology | active | true |
JSF:SPEC:198.9 | 11 | 1.3 |
javax.faces.DISABLE_FACELET_JSF_VIEWHANDLER -- If this param is
set, and calling toLowerCase().equals("true") on a String
representation of its value returns true, the default
ViewHandler must behave as specified in the latest 1.2 version
of this specification.
| true |
| false | technology | active | true |
JSF:SPEC:198.10 | 11 | 1.3 |
javax.faces.FACELETS_LIBRARIES -- If this param is set, the
runtime must interpret it as a semicolon (;) separated list of
paths, starting with “/” (without the quotes).
| true |
| false | technology | active | true |
JSF:SPEC:198.11 | 11 | 1.3 |
javax.faces.FACELETS_VIEW_MAPPINGS -- If this param is set, the
runtime must interpret it as a semicolon (;) separated list of
strings that is used to forcibly declare that certain pages in
the application must be interpreted as using Facelets,
regardless of their extension.
| true |
| false | technology | active | true |
JSF:SPEC:198.12 | 11 | 1.3 |
javax.faces.INTERPRET_EMPTY_STRING_SUBMITTED_VALUES_AS_NULL --
If this param is set, and calling toLowerCase().equals("true")
on a String representation of its value returns true, any
implementation of UIInput.validate() must take the following
additional action. context parameter value is true (ignoring
case), and UIInput.getSubmittedValue() returns a zero-length
String call UIInput.setSubmittedValue(null) and continue
processing using null as the current submitted value
| true |
| false | technology | active | true |
JSF:SPEC:198.13 | 11 | 1.3 |
javax.faces.DATETIMECONVERTER_DEFAULT_TIMEZONE_IS_SYSTEM_TIMEZO
NE -- If this param is set, and calling toLowerCase().equals(
"true") on a String representation of its value returns true,
Application.createConverter() must guarantee that the default
for the timezone of all javax.faces.convert.DateTimeConverter
instances must be equal to TimeZone.getDefault() instead of
“GMT”.
| true |
| false | technology | active | true |
JSF:SPEC:198.14 | 11 | 1.3 |
javax.faces.VALIDATE_EMPTY_FIELDS -- If this param is set, and
calling toLowerCase().equals("true") on a String representation
of its value returns true, all submitted fields will be
validated
| true |
| false | technology | active | true |
JSF:SPEC:198.15 | 11 | 1.3 |
javax.faces.validator.DISABLE_DEFAULT_BEAN_VALIDATOR -- If this
param is set, and calling toLowerCase().equals("true") on a
String representation of its value returns true, the runtime
must not automatically add the validator with validator-id equal
to the value of the symbolic constant
javax.faces.validator.VALIDATOR_ID to the list of default
validators.
| true |
| false | technology | active | true |
JSF:SPEC:199 | 11 | 2.6.1 |
JSF implementations must also include implementations of the several
factory classes. In order to be dynamically instantiated according to
the algorithm defined above, the factory implementation class must
include a public, no-arguments constructor.
| true |
| false | technology | active | true |
JSF:SPEC:200 | 11 | 2.6.1 |
javax.faces.FactoryFinder implements the standard discovery algorithm
for all factory objects specified in the JavaServer Faces APIs.
For a given factory class name, a corresponding implementation class is
searched for based on the following algorithm. Items are listed in order
of decreasing search precedence:
| true |
| false | technology | active | false |
JSF:SPEC:200.1 | 11 | 2.6.1 |
If a default JavaServer Faces configuration file
(/WEB-INF/faces-config.xml) is bundled into the web application,
and it contains a factory entry of the given factory class name,
that factory class is used.
| true |
| false | technology | active | true |
JSF:SPEC:200.2 | 11 | 2.6.1 |
If the JavaServer Faces configuration resource(s) named by the
javax.faces.CONFIG_FILES ServletContext init parameter (if any)
contain any factory entries of the given factory class name,
those factories are used, with the last one taking precedence.
| true |
| false | technology | active | true |
JSF:SPEC:200.3 | 11 | 2.6.1 |
If there are any META-INF/faces-config.xml resources bundled any
JAR files in the web ServletContext’s resource paths, the
factory entries of the given factory class name in those files
are used, with the last one taking precedence.
| true |
| false | technology | active | true |
JSF:SPEC:200.4 | 11 | 2.6.1 |
If a META-INF/services/{factory-class-name} resource is visible
to the web application class loader for the calling application
(typically as a result of being present in the manifest of a
JAR file), its first line is read and assumed to be the name of
the factory implementation class to use.
| true |
| false | technology | active | true |
JSF:SPEC:200.5 | 11 | 2.6.1 |
If none of the above steps yield a match, the JavaServer Faces
implementation specific class is used.
| true |
| false | technology | active | true |
JSF:SPEC:201 | 11 | 2.6.1 |
For each of the public static final String fields on the class
FactoryFinder whose field names end with the string “_FACTORY”
(without the quotes), the implementation must provide an implementation
of the corresponding Factory class using the algorithm described earlier
in this section.
| true |
| false | technology | active | true |
JSF:SPEC:202 | 11 | 2.6.2 |
The FacesServlet implementation class must also declare two static
public final String constants whose value is a context initialization
parameter that affects the behavior of the servlet
| true |
| false | technology | active | false |
JSF:SPEC:202.1 | 11 | 2.6.2 |
CONFIG_FILES_ATTR -- the context initialization attribute that
may optionally contain a comma-delimited list of context
relative resources (in addition to /WEB-INF/facesconfig. xml
which is always processed if it is present) to be processed.
The value of this constant must be “javax.faces.CONFIG_FILES”.
| true |
| false | technology | active | true |
JSF:SPEC:202.2 | 11 | 2.6.2 |
LIFECYCLE_ID_ATTR -- the lifecycle identifier of the Lifecycle
instance to be used for processing requests to this application,
if an instance other than the default is required. The value of
this constant must be “javax.faces.LIFECYCLE_ID”.
| true |
| false | technology | active | true |
JSF:SPEC:203 | 11 | 2.6.3 |
UIComponentELTag is an implementation of
javax.servlet.jsp.tagext.BodyTag, and must be the base class for any JSP
custom action that corresponds to a JSF UIComponent.
| true |
| false | technology | active | true |
JSF:SPEC:204 | 11 | 3.1 |
The faces implementation must now provide the attributetag class.
| true |
| false | technology | active | true |
JSF:SPEC:205 | 11 | 4.2 |
the JSF implementation must process zero or more application
configuration resources, located according to the following algorithm:
| true |
| false | technology | active | false |
JSF:SPEC:205.1 | 11 | 4.2 |
Search for all resources named “META-INF/faces-config.xml” in the
ServletContext resource paths for this web application, and load
each as a JSF configuration resource (in reverse order of the
order in which they are returned by getResources() on the
current Thread’s ContextClassLoader).
| true |
| false | technology | active | true |
JSF:SPEC:205.2 | 11 | 4.2 |
Check for the existence of a context initialization parameter
named javax.faces.CONFIG_FILES. If it exists, treat it as a
comma-delimited list of context relative resource paths
(starting with a “/”), and load each of the specfied resources.
| true |
| false | technology | active | true |
JSF:SPEC:205.3 | 11 | 4.2 |
Check for the existence of a web application configuration
resource named “/WEBINF/faces-config.xml”, and load it if the
resource exists.
| true |
| false | technology | active | true |
JSF:SPEC:206 | 11 | 4.2 |
The runtime must publish the
javax.faces.event.PostConstructApplicationEvent immediately after all
application configuration resources have been processed.
| true |
| false | technology | active | true |
JSF:SPEC:207 | 11 | 4.2 |
XML parsing errors detected during the loading of an application
resource file are fatal to application startup, and must cause the
application to not be made available by the container.
| true |
| false | technology | active | true |
JSF:SPEC:208 | 11 | 4.2 |
JSF implementations that are part of a Java EE technology compliant
implementation are required to validate the application resource file
against the XML schema for structural correctness. The validation is not
required for JSF implementations that are not part of a Java EE
technology-compliant implementation.
| true |
| false | technology | active | true |
JSF:SPEC:209 | 11 | 4.3 |
Application configuration resources must conform to the XML schema
shown in Appendix 1.1. In addition, they must include the following
schema declaration.
| true |
| false | technology | active | true |
JSF:SPEC:210 | 11 | 4.4 |
Application configuration resources that are written to run on JSF 2.0
must include the following schema declaration...
| true |
| false | technology | active | true |
JSF:SPEC:211 | 11 | 4.4 |
Application configuration resources that are written to run on JSF 1.2
must include the following schema declaration...
| true |
| false | technology | active | true |
JSF:SPEC:212 | 11 | 4.4 |
Application configuration resources that are written to run on JSF 1.1
must include the following schema declaration...
| true |
| false | technology | active | true |
JSF:SPEC:213 | 11 | 4.4 |
Application configuration resources that are written to run on JSF 1.0
must include the following schema declaration...
| true |
| false | technology | active | true |
JSF:SPEC:214 | 11 | 4.6 |
The runtime must support the decorator design pattern as specified
below for the following artifacts.
| true |
| false | technology | active | true |
JSF:SPEC:215 | 11 | 4.7 |
If an <name> element is present, it must be considered for the
ordering of decoratable artifacts (unless the duplicate name exception
applies, as described below).
| true |
| false | technology | active | false |
JSF:SPEC:215.1 | 11 | 4.7 |
Absolute ordering: an <absolute-ordering> element in the
applicationFacesConfig
| true |
| false | technology | active | true |
JSF:SPEC:215.2 | 11 | 4.7 |
Relative ordering: an <ordering> element within a file in
the applicationConfigurationResources
| true |
| false | technology | active | true |
JSF:SPEC:216 | 11 | 4.7 |
The preceding example illustrates some, but not all, of the following
principles.
| true |
| false | technology | active | false |
JSF:SPEC:216.1 | 11 | 4.7 |
<before> means the document must be ordered before the
document with the name matching the name specified within the
nested <name> element.
| true |
| false | technology | active | true |
JSF:SPEC:216.2 | 11 | 4.7 |
<after> means the document must be ordered after the
document with the name matching the name specified within the
nested <name> element.
| true |
| false | technology | active | true |
JSF:SPEC:216.3 | 11 | 4.7 |
There is a special element <others /> which may be included
zero or one time within the <before> or <after> element,
or zero or one time directly within the <absolute-ordering>
element. The <others /> element must be handled as follows.
| true |
| false | technology | active | false |
JSF:SPEC:216.3.1 | 11 | 4.7 |
If the <before> element contains a nested
<others />, the document will be moved to the
beginning of the list of sorted documents.
| true |
| false | technology | active | true |
JSF:SPEC:216.3.2 | 11 | 4.7 |
If the <after> element contains a nested
<others />, the document will be moved to the end of
the list of sorted documents.
| true |
| false | technology | active | true |
JSF:SPEC:216.3.3 | 11 | 4.7 |
Within a <before> or <after> element, if an
<tothers /> element is present, but is not the only
<name> element within its parent element, the other
elements within that parent must be considered in the
ordering process.
| true |
| false | technology | active | true |
JSF:SPEC:216.3.4 | 11 | 4.7 |
If the <others /> element appears directly within
the <absolute-ordering> element, the runtime must
ensure that any application configuration resources in
applicationConfigurationResources not explicitly named
in the <absolute-ordering> section are included at
that point in the processing order.
| true |
| false | technology | active | true |
JSF:SPEC:216.4 | 11 | 4.7 |
If a faces-config file does not have an <ordering> or
<absolute-ordering> element the artifacts are assumed to not
have any ordering dependency.
| true |
| false | technology | active | true |
JSF:SPEC:216.5 | 11 | 4.7 |
If the runtime discovers circular references, an informative
message must be logged, and the application must fail to deploy.
Again, one course of action the user may take is to use absolute
ordering in the applicationFacesConfig.
| true |
| false | technology | active | false |
JSF:SPEC:217 | 11 | 5.1 |
If the <faces-config>> element in the WEB-INF/faces-config.xml file
contains metadata-complete attribute whose value is “true”, the
implementation must not perform annotation scanning on any classes
except for those classes provided by the implementation itself.
| true |
| false | technology | active | true |
JSF:SPEC:218 | 11 | 5.1 |
If the runtime discovers a conflict between an entry in the Application
Configuration Resources and an annotation, the entry in the Application
Configuration Resources takes precedence.
| true |
| false | technology | active | true |
JSF:SPEC:219 | 11 | 5.1 |
All classes in WEB-INF/classes must be scanned.
| true |
| false | technology | active | true |
JSF:SPEC:220 | 11 | 5.1 |
For every jar in the application's WEB-INF/lib directory, if the jar
contains a “META-INF/faces-config.xml” file or a file that matches the
regular expression “META-INF/.*faces-config.xml” (even an empty one),
all classes in that jar must be scanned.
| true |
| false | technology | active | true |
JSF:SPEC:221 | 12 | 1 |
Upon receipt of each JSF-destined request to this web application,
the JSF implementation must acquire a reference to the Lifecycle
instance for this web application, and call its execute() and render()
methods to perform the request processing lifecycle.
| true |
| false | technology | active | true |
JSF:SPEC:222 | 12 | 3 |
Any exceptions thrown during the beforePhase() listeners must be caught
and published to the ExceptionHandler.
| true |
| false | technology | active | true |
JSF:SPEC:223 | 12 | 3 |
Any exceptions thrown during the execution of the actual lifecycle
phase, that reach the runtime code that implements the JSF lifecycle
phase, must be caught and and published to the ExceptionHandler
| true |
| false | technology | active | true |
JSF:SPEC:224 | 12 | 3 |
Any exceptions thrown during the afterPhase() liseteners must be caught
and published to the ExceptionHandler.
| true |
| false | technology | active | true |
JSF:SPEC:225 | 13 | 1 |
There must be a single JavaScript resource that exists with the resource
identifier jsf.js
| true |
| false | technology | active | true |
JSF:SPEC:226 | 13 | 1 |
The jsf.js must exist under the resource library javax.faces, following
the conventions in Section 2.6 “Resource Handling”.
| true |
| false | technology | active | true |
JSF:SPEC:227 | 13 | 2 |
If the OpenAjax library is available, libraries must register themselves
using OpenAjax.registerLibrary() at the time when the JavaScript files
are fetched and parsed by the browser’s JavaScript engine.
| true |
| false | technology | active | true |
JSF:SPEC:228 | 13 | 2 |
Any implementation that intends to use the JavaServer Faces 2.0 JavaScript
API must define a top level JavaScript object name jsf, whose type is a
JavaScript associative array. Within that top level JavaScript object,
found in the OpenAjax Hub, there must be a property named ajax..
| true |
| false | technology | active | true |
JSF:SPEC:229 | 13 | 3.2 |
All Ajax requests must be put into a client side request queue before
they are sent to the server to ensure Ajax requests are processed in the
order they are sent.
| true |
| false | technology | active | true |
JSF:SPEC:230 | 13 | 3.2 |
After a request is sent, the Ajax request callback function must remove
the request from the queue (also known as dequeuing). If the request
completed successfully, it must be removed from the queue. If there was
an error, the client must be notified, but the request must still be
removed from the queue
| true |
| false | technology | active | true |
JSF:SPEC:231 | 13 | 3.3.3 |
The Ajax request callback function is called when the Ajax
request/response interaction is complete. This function must perform the
following actions:
| true |
| false | technology | active | false |
JSF:SPEC:231.1 | 13 | 3.3.1 |
If the return status is >= 200 and < 300, send a “complete”
event following Section13.3.5.3 “Sending Events”.
| true |
| false | technology | active | true |
JSF:SPEC:231.2 | 13 | 3.3.1 |
If the return status is outside the range mentioned above, send
a “complete” event following Section13.3.5.3 “Sending Events”.
| true |
| false | technology | active | true |
JSF:SPEC:231.3 | 13 | 3.3.1 |
Regardless of whether the request completed successfully or not:
| true |
| false | technology | active | false |
JSF:SPEC:231.3.1 | 13 | 3.3.1 |
remove the completed requests (Ajax readystate 4) from
the request queue (dequeue) - specifically the requests
that have been on the queue the longest.
| true |
| false | technology | active | true |
JSF:SPEC:231.3.2 | 13 | 3.3.1 |
find the next oldest unprocessed (Ajax readystate 0)
request on the queue, and send it. The implementation
must ensure that the request that is sent does not enter
the queue again.
| true |
| false | technology | active | true |
JSF:SPEC:232 | 13 | 3.4 |
The implementation of jsf.ajax.response must handle the response as
outlined in the JavaScript documentation for jsf.ajax.response. The
elements in the response must be processed in the
order they appear in the response.
| true |
| false | technology | active | true |
JSF:SPEC:233 | 13 | 3.5.2 |
The implementation must ensure the JavaScript function that is
registered for an Ajax request must be called in accordance with the
events outlined in SectionTABLE14-3 “Events”.
| true |
| false | technology | active | true |
JSF:SPEC:234 | 13 | 3.5.3 |
The implementation must send events to the runtime as follows:
| true |
| false | technology | active | false |
JSF:SPEC:234.1 | 13 | 3.5.3 |
Construct a data payload for events using the properties
described in SectionTABLE14-4 “Event Data Payload”
| true |
| false | technology | active | true |
JSF:SPEC:234.2 | 13 | 3.5.3 |
If an event handler function was registered with the “onevent”
attribute (Section13.3.5.1 “Monitoring Events For An Ajax
Request”) call it passing the data payload.
| true |
| false | technology | active | true |
JSF:SPEC:234.3 | 13 | 3.5.3 |
If any event handling functions were registered with the
“addOnEvent” function (Section13.3.5.2 “Monitoring Events
For All Ajax Requests”) call them passing the data payload.
| true |
| false | technology | active | true |
JSF:SPEC:235 | 13 | 3.6.1 |
The implementation must ensure the JavaScript function that is
registered for an Ajax request must be called in accordance when the
request status code from the server is as outlined in SectionTABLE14-5
“Errors”.
| true |
| false | technology | active | true |
JSF:SPEC:236 | 13 | 3.6.2 |
The implementation must ensure the JavaScript function that is
registered must be called in accordance with the errors outlined in
SectionTABLE14-5 “Errors”.
| true |
| false | technology | active | true |
JSF:SPEC:237 | 13 | 3.6.3 |
The implementation must signal errors to the runtime as follows:
| true |
| false | technology | active | false |
JSF:SPEC:237.1 | 13 | 3.6.3 |
Construct a data payload for errors using the properties
described in SectionTABLE14-6 “Error Data Payload”.
| true |
| false | technology | active | true |
JSF:SPEC:237.2 | 13 | 3.6.3 |
If an error handler function was registered with the “onerror”
attribute (Section13.3.6.1 “Handling Errors For An Ajax
Request”) call it passing the data payload.
| true |
| false | technology | active | true |
JSF:SPEC:237.3 | 13 | 3.6.3 |
If any error handling functions were registered with the
“addOnError” function (Section13.3.6.2 “Handling Errors For All
Ajax Requests”) call them passing the data payload.
| true |
| false | technology | active | true |
JSF:SPEC:237.4 | 13 | 3.6.3 |
If the project stage is “development” (see Section14.5
“Determining An Application’s Project Stage”) use JavaScript
“alert” to signal the error(s).
| true |
| false | technology | active | true |
JSF:SPEC:238 | 13 | 3.7 |
JavaServer Faces Ajax frameworks must ensure exception information is
written to the response in the format:
| true |
| false | technology | active | false |
JSF:SPEC:238.1 | 13 | 3.7 |
Extract the “class” from the “Throwable” object and write that
as the contents of error-name in the response.
| true |
| false | technology | active | true |
JSF:SPEC:238.2 | 13 | 3.7 |
Extract the “cause” from the “Throwable” object if it is
available and write that as the contents of error-message in the
response. If “cause” is not available, write the string returned
from “Throwable.getMessage()”.
| true |
| false | technology | active | true |
JSF:SPEC:238.3 | 13 | 3.7 |
Implementations must ensure that an ExceptionHandler suitable
for writing exceptions to the partial response is installed if
the current request required an Ajax response
(PartialViewContext.isAjaxRequest() returns true).
| true |
| false | technology | active | true |
JSF:SPEC:239 | 13 | 4.2 |
The UIViewRoot processDecodes, processValidators and processUpdates
methods must determine if the request is a partial request using the
FacesContext.isPartialRequest() method.
| true |
| false | technology | active | true |
JSF:SPEC:240 | 13 | 4.3 |
The UIViewRoot getRendersChildren and encodeChildren methods must
determine if the request is an Ajax request using the
FacesContext.isAjaxRequest() method.
| true |
| false | technology | active | true |
JSF:SPEC:241 | 13 | 4.4 |
Implementations must adhere to the response format as specified in the
JavaScript docs for jsf.ajax.response.
| true |
| false | technology | active | true |
JSF:SPEC:242 | 13 | 4.4 |
Implementations must adhere to the response format as specified in the
JavaScript docs for jsf.ajax.response.
| true |
| false | technology | active | true |
JSF:SPEC:243 | 14 | 2 |
The jsf.ajax.request function is responsible for sending an Ajax request
to the server. The requirements for this function are as follows:
| true |
| false | technology | active | false |
JSF:SPEC:243.1 | 14 | 2 |
The request must be sent asynchronously
| true |
| false | technology | active | true |
JSF:SPEC:243.2 | 14 | 2 |
The request must be sent with method type POST
| true |
| false | technology | active | true |
JSF:SPEC:243.3 | 14 | 2 |
The request URL will be the form action attribute
| true |
| false | technology | active | true |
JSF:SPEC:243.4 | 14 | 2 |
All requests will be queued with the use of a client side
request queue to help ensure request ordering
| true |
| false | technology | active | true |
JSF:SPEC:244 | 14 | 2.1 |
It must be a DOM element object or a string identifier for a DOM
element.
| true |
| false | technology | active | true |
JSF:SPEC:245 | 14 | 2.4 |
The request header must be set with the name Faces-Request and the value
partial/ajax.
| true |
| false | technology | active | true |
JSF:SPEC:246 | 14 | 3 |
The specifics details of this function’s operation must follow the
jsf.ajax.response JavaScript documentation.
| true |
| false | technology | active | true |
JSF:SPEC:247 | 14 | 5 |
This function must return the constant representing the current state of
the running application in a typical product development lifecycle. The
returned value must be the value returned from the server side method
javax.faces.application.Application.getProjectStage()
| true |
| false | technology | active | true |