Expression factory implementation. This class is also used as an EL "service provider". The
JUEL jar file specifies this class as el expression factory implementation in
META-INF/services/javax.el.ExpressionFactory. Calling {@link ExpressionFactory#newInstance()} will then returnan instance of this class, configured as described below. The default constructor loads properties from resources
-
JAVA_HOME/lib/el.properties - If this file exists and if it contains property javax.el.ExpressionFactory whose value is the name of this class, these properties are taken as default properties. -
el.properties on your classpath. These properties override the properties from JAVA_HOME/lib/el.properties.
There's also a constructor to explicitly pass in an instance of {@link Properties}. Having this, the following properties are read:
-
javax.el.cacheSize - cache size (int, default is 1000) -
javax.el.methodInvocations - allow method invocations as in ${foo.bar(baz)} (boolean, default is false). -
javax.el.nullProperties - resolve null properties as in ${foo[null]} (boolean, default is false). -
javax.el.varArgs - support function/method calls using varargs (boolean, default is false).
@author Christoph Beck