javax.el

## Class ExpressionFactory

- java.lang.Object
- - javax.el.ExpressionFactory

    public abstract class ExpressionFactory
    extends java.lang.Object

Since:
  2.1

### Constructor Summary

Constructors
Constructor and Description
`ExpressionFactory()`

### Method Summary

Methods
`abstract java.lang.Object` `coerceToType(java.lang.Object obj, java.lang.Class<?> expectedType)`
`abstract MethodExpression` `createMethodExpression(ELContext context, java.lang.String expression, java.lang.Class<?> expectedReturnType, java.lang.Class<?>[] expectedParamTypes)`
`abstract ValueExpression` `createValueExpression(ELContext context, java.lang.String expression, java.lang.Class<?> expectedType)`
`abstract ValueExpression` `createValueExpression(java.lang.Object instance, java.lang.Class<?> expectedType)`
`static ExpressionFactory` `newInstance()` Create a new `ExpressionFactory`.
`static ExpressionFactory` `newInstance(java.util.Properties properties)` Create a new `ExpressionFactory` passing in the provided `Properties`.

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

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

### Constructor Detail

#### ExpressionFactory

    public ExpressionFactory()

### Method Detail

#### coerceToType

    public abstract java.lang.Object coerceToType(java.lang.Object obj,
                                java.lang.Class<?> expectedType)
                                           throws ELException

Throws:
  `ELException`

#### createValueExpression

    public abstract ValueExpression createValueExpression(ELContext context,
                                        java.lang.String expression,
                                        java.lang.Class<?> expectedType)
                                                   throws java.lang.NullPointerException,
                                                          ELException

Throws:
  `java.lang.NullPointerException`
  `ELException`

#### createValueExpression

    public abstract ValueExpression createValueExpression(java.lang.Object instance,
                                        java.lang.Class<?> expectedType)

#### createMethodExpression

    public abstract MethodExpression createMethodExpression(ELContext context,
                                          java.lang.String expression,
                                          java.lang.Class<?> expectedReturnType,
                                          java.lang.Class<?>[] expectedParamTypes)
                                                     throws ELException,
                                                            java.lang.NullPointerException

Throws:
  `ELException`
  `java.lang.NullPointerException`

#### newInstance

    public static ExpressionFactory newInstance()

Create a new `ExpressionFactory`. The class to use is determined by the following search order:

1. services API (META-INF/services/javax.el.ExpressionFactory)
2. $JRE_HOME/lib/el.properties - key javax.el.ExpressionFactory
3. javax.el.ExpressionFactory
4. Platform default implementation - org.apache.el.ExpressionFactoryImpl

Returns:
  the new ExpressionFactory

#### newInstance

    public static ExpressionFactory newInstance(java.util.Properties properties)

Create a new `ExpressionFactory` passing in the provided `Properties`. Search order is the same as `newInstance()`.

Parameters:
  `properties` - the properties to be passed to the new instance (may be null)
Returns:
  the new ExpressionFactory