Package ognl
OGNL stands for Object-Graph Navigation Language; it is an expression language for getting and setting properties of Java objects. You use the same expression for both getting and setting the value of a property.
OGNL started out as a way to set up associations between UI components and controllers using property names. As the desire for more complicated associations grew, Drew Davidson created what he called KVCL, for Key-Value Coding Language, egged on by Luke Blanshard. Luke then reimplemented the language using ANTLR, came up with the new name, and, egged on by Drew, filled it out to its current state.
We pronounce OGNL as a word, like the last syllables of a drunken pronunciation of "orthogonal" or like "ogg-null".
-
Interface Summary Interface Description ClassCacheInspector Optional interface that may be registered withOgnlRuntime.setClassCacheInspector(ClassCacheInspector)
as a means to disallow caching of specific class types.ClassResolver This interface defines an object that will resolve a class from a string and a ognl context table.ElementsAccessor This interface defines a method for getting the "elements" of an object, which means any objects that naturally would be considered to be contained by the object.JavaSource Defines an object that can return a representation of itself and any objects it contains in the form of aString
embedded with literal java statements.MemberAccess This interface provides a hook for preparing for accessing members of objects.MethodAccessor This interface defines methods for calling methods in a target object.Node JJTree interface for AST nodes, as modified to handle the OGNL operations getValue and setValue.NodeType Used by some of theOgnlExpressionCompiler
logic to determine the object type ofNode
s during expression evaluation.NullHandler Interface for handling null results from Chains.NumericTypes This interface defines some useful constants for describing the various possible numeric types of OGNL.OgnlParserConstants Token literal values and constants.OgnlParserTreeConstants PropertyAccessor This interface defines methods for setting and getting a property from a target object.TypeConverter Interface for accessing the type conversion facilities within a context. -
Class Summary Class Description ArrayElementsAccessor Implementation of ElementsAccessor that returns an iterator over a Java array.ArrayPropertyAccessor Implementation of PropertyAccessor that uses numbers and dynamic subscripts as properties to index into Java arrays.ASTAnd ASTChain ASTConst ASTCtor ASTInstanceof ASTList ASTMethod ASTOr ASTProperty ASTRootVarRef ASTSequence ASTStaticField ASTStaticMethod ASTThisVarRef ASTVarRef BooleanExpression Base class for boolean expressions.CollectionElementsAccessor Implementation of ElementsAccessor that returns a collection's iterator.ComparisonExpression Base class for types that compare values.DefaultClassResolver Default class resolution.DefaultMemberAccess This class provides methods for setting up and restoring access in a Field.DefaultTypeConverter Default type conversion.DynamicSubscript This class has predefined instances that stand for OGNL's special "dynamic subscripts" for getting at the first, middle, or last elements of a list.EnumerationElementsAccessor Implementation of the ElementsAccessor interface for Enumerations, which returns an iterator that passes its calls through to the target Enumeration.EnumerationIterator Object that implements Iterator from an EnumerationEnumerationPropertyAccessor Implementation of PropertyAccessor that provides "property" reference to "nextElement" (aliases to "next" also) and "hasMoreElements" (also aliased to "hasNext").Evaluation AnEvaluation
is and object that holds a node being evaluated and the source from which that node will take extract its value.EvaluationPool ExpressionNode IntHashMap A Map that uses ints as the keys.IntHashMap.Entry IteratorElementsAccessor Implementation of the ElementsAccessor interface for Iterators, which simply returns the target iterator itself.IteratorEnumeration Maps an Iterator to an EnumerationIteratorPropertyAccessor Implementation of PropertyAccessor that provides "property" reference to "next" and "hasNext".JavaCharStream An implementation of interface CharStream, where the stream is assumed to contain only ASCII characters (with java-like unicode escape processing).JJTOgnlParserState ListPropertyAccessor Implementation of PropertyAccessor that uses numbers and dynamic subscripts as properties to index into Lists.MapElementsAccessor Implementation of ElementsAccessor that returns an iterator over the map's values.MapPropertyAccessor Implementation of PropertyAccessor that sets and gets properties by storing and looking up values in Maps.NumberElementsAccessor Implementation of ElementsAccessor that returns an iterator over integers from 0 up to the given target.NumericExpression Base class for numeric expressions.ObjectArrayPool ObjectArrayPool.SizePool ObjectElementsAccessor Implementation of ElementsAccessor that returns a single-element iterator, containing the original target object.ObjectIndexedPropertyDescriptor PropertyDescriptor subclass that describes an indexed set of read/write methods to get a property.ObjectMethodAccessor Implementation of PropertyAccessor that uses reflection on the target object's class to find a field or a pair of set/get methods with the given property name.ObjectNullHandler Implementation of NullHandler that returns null in all cases, so that NullPointerException will be thrown by the caller.ObjectPropertyAccessor Implementation of PropertyAccessor that uses reflection on the target object's class to find a field or a pair of set/get methods with the given property name.Ognl This class provides static methods for parsing and interpreting OGNL expressions.OgnlContext This class defines the execution context for an OGNL expressionOgnlInvokePermission BasicPermission subclass that defines a permission token for invoking methods within OGNL.OgnlOps This is an abstract class with static methods that define the operations of OGNL.OgnlParser OgnlParser is a JavaCC parser class; it translates OGNL expressions into abstract syntax trees (ASTs) that can then be interpreted by the getValue and setValue methods.OgnlParserTokenManager Token Manager.OgnlRuntime Utility class used by internal OGNL API to do various things like: Handles majority of reflection logic / caching.SetPropertyAccessor Implementation of PropertyAccessor that uses numbers and dynamic subscripts as properties to index into Lists.SimpleNode Token Describes the input token stream. -
Exception Summary Exception Description ExpressionSyntaxException Exception thrown if a malformed OGNL expression is encountered.InappropriateExpressionException Exception thrown if an OGNL expression is evaluated in the wrong context; the usual case is when an expression that does not end in a property reference is passed tosetValue
.MethodFailedException Exception thrown if a method or constructor call fails.NoSuchPropertyException Exception thrown if a property is attempted to be extracted from an object that does not have such a property.OgnlException Superclass for OGNL exceptions, incorporating an optional encapsulated exception.ParseException This exception is thrown when parse errors are encountered. -
Error Summary Error Description TokenMgrError Token Manager Error.