| 
 | Java EE 5 SDK | ||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES All Classes | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Object extended by javax.el.ExpressionFactory
public abstract class ExpressionFactory
| Constructor Summary | |
|---|---|
| ExpressionFactory() | |
| Method Summary | |
|---|---|
| abstract Object | coerceToType(Object obj,
 Class<?> targetType)Coerces an object to a specific type according to the EL type conversion rules. | 
| abstract MethodExpression | createMethodExpression(ELContext context,
 String expression,
 Class<?> expectedReturnType,
 Class<?>[] expectedParamTypes)Parses an expression into a MethodExpressionfor later
 evaluation. | 
| abstract ValueExpression | createValueExpression(ELContext context,
 String expression,
 Class<?> expectedType)Parses an expression into a ValueExpressionfor later
 evaluation. | 
| abstract ValueExpression | createValueExpression(Object instance,
 Class<?> expectedType)Creates a ValueExpression that wraps an object instance. | 
| static ExpressionFactory | newInstance()Creates a new instance of a ExpressionFactory. | 
| static ExpressionFactory | newInstance(Properties properties)Create a new instance of a ExpressionFactory, with
 optional properties. | 
| Methods inherited from class java.lang.Object | 
|---|
| clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait | 
| Constructor Detail | 
|---|
public ExpressionFactory()
| Method Detail | 
|---|
public static ExpressionFactory newInstance()
ExpressionFactory.
 This method uses the following ordered lookup procedure to determine
 the ExpressionFactory implementation class to load:
 META-INF/services/javax.el.ExpressionFactory exists,
 then its first line, if present, is used as the UTF-8 encoded name of
 the implementation class.  java.util.Properties.load(InputStream) method,
 and it contains an entry whose key is "javax.el.ExpressionFactory",
 then the value of that entry is used as the name of the
 implementation class.javax.el.ExpressionFactory system property.
 If a system property with this name is defined, then its value is
 used as the name of the implementation class.
public static ExpressionFactory newInstance(Properties properties)
Create a new instance of a ExpressionFactory, with
 optional properties.
 This method uses the same lookup procedure as the one used in
 newInstance().
 
 If the argument properties is not null, and if the
 implementation contains a constructor with a single parameter of
 type java.util.Properties, then the constructor is used
 to create the instance.
 
Properties are optional and can be ignored by an implementation.
The name of a property should start with "javax.el."
The following are some suggested names for properties.
properties - Properties passed to the implementation.
 If null, then no properties.public abstract ValueExpression createValueExpression(ELContext context, String expression, Class<?> expectedType)
ValueExpression for later
 evaluation. Use this method for expressions that refer to values.
 This method should perform syntactic validation of the expression.
 If in doing so it detects errors, it should raise an
 ELException.
context - The EL context used to parse the expression.
 The FunctionMapper and VariableMapper
 stored in the ELContext
 are used to resolve functions and variables found in
 the expression. They can be null, in which case
 functions or variables are not supported for this expression.
 The object
 returned must invoke the same functions and access the same
 variable mappings 
 regardless of whether
 the mappings in the provided FunctionMapper
 and VariableMapper instances
 change between calling
 ExpressionFactory.createValueExpression() and any
 method on ValueExpression.
 Note that within the EL, the ${} and #{} syntaxes are treated identically. This includes the use of VariableMapper and FunctionMapper at expression creation time. Each is invoked if not null, independent of whether the #{} or ${} syntax is used for the expression.
expression - The expression to parseexpectedType - The type the result of the expression
 will be coerced to after evaluation.
NullPointerException - Thrown if expectedType is null.
ELException - Thrown if there are syntactical errors in the
 provided expression.public abstract ValueExpression createValueExpression(Object instance, Class<?> expectedType)
getValue() method, optionally coerced.
instance - The object instance to be wrapped.expectedType - The type the result of the expression
 will be coerced to after evaluation. There will be no
 coercion if it is Object.class,
NullPointerException - Thrown if expectedType is null.public abstract MethodExpression createMethodExpression(ELContext context, String expression, Class<?> expectedReturnType, Class<?>[] expectedParamTypes)
MethodExpression for later
 evaluation. Use this method for expressions that refer to methods.
 
 If the expression is a String literal, a MethodExpression
  is created, which when invoked, returns the String literal,
 coerced to expectedReturnType. An ELException is thrown if
 expectedReturnType is void or if the coercion of the String literal
 to the expectedReturnType yields an error (see Section "1.16 Type
 Conversion").
 
This method should perform syntactic validation of the expression.
 If in doing so it detects errors, it should raise an
 ELException.
context - The EL context used to parse the expression.
 The FunctionMapper and VariableMapper
 stored in the ELContext
 are used to resolve functions and variables found in
 the expression. They can be null, in which
 case functions or variables are not supported for this expression.
 The object
 returned must invoke the same functions and access the same variable
 mappings
 regardless of whether
 the mappings in the provided FunctionMapper
 and VariableMapper instances
 change between calling
 ExpressionFactory.createMethodExpression() and any
 method on MethodExpression.
 Note that within the EL, the ${} and #{} syntaxes are treated identically. This includes the use of VariableMapper and FunctionMapper at expression creation time. Each is invoked if not null, independent of whether the #{} or ${} syntax is used for the expression.
expression - The expression to parseexpectedReturnType - The expected return type for the method
 to be found. After evaluating the expression, the
 MethodExpression must check that the return type of
 the actual method matches this type. Passing in a value of
 null indicates the caller does not care what the
 return type is, and the check is disabled.expectedParamTypes - The expected parameter types for the method to
 be found. Must be an array with no elements if there are
 no parameters expected. It is illegal to pass null.
ELException - Thrown if there are syntactical errors in the
 provided expression.
NullPointerException - if paramTypes is null.public abstract Object coerceToType(Object obj, Class<?> targetType)
An ELException is thrown if an error results from
 applying the conversion rules.
 
obj - The object to coerce.targetType - The target type for the coercion.
ELException - thrown if an error results from applying the
 conversion rules.| 
 | Java EE 5 SDK | ||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES All Classes | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
Copyright 2007 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms.
Scripting on this page tracks web page traffic, but does not change the content in any way.