Defines property resolution behavior on objects using the JavaBeans component architecture.
This resolver handles base objects of any type, as long as the base is not null
. It accepts any object as a property or method, and coerces it to a string.
For property resolution, the property string is used to find a JavaBeans compliant property on the base object. The value is accessed using JavaBeans getters and setters.
For method resolution, the method string is the name of the method in the bean. The parameter types can be optionally specified to identify the method. If the parameter types are not specified, the parameter objects are used in the method resolution.
This resolver can be constructed in read-only mode, which means that {@link #isReadOnly} will always return true
and {@link #setValue} will always throwPropertyNotWritableException
.
ELResolver
s are combined together using {@link CompositeELResolver}s, to define rich semantics for evaluating an expression. See the javadocs for {@link ELResolver} for details.
Because this resolver handles base objects of any type, it should be placed near the end of a composite resolver. Otherwise, it will claim to have resolved a property before any resolvers that come after it get a chance to test if they can do so as well.
@see CompositeELResolver
@see ELResolver
@since JSP 2.1