- All Implemented Interfaces:
public class InstantiatingNullHandler
- extends Object
- implements ognl.NullHandler
Provided that the key The following rules are used when handling null references:
CREATE_NULL_OBJECTS is in the action context with a value of true (this key is set
only during the execution of the
ParametersInterceptor), OGNL expressions
that have caused a NullPointerException will be temporarily stopped for evaluation while the system automatically
tries to solve the null references by automatically creating the object.
For example, if a form element has a text field named person.name and the expression person evaluates
to null, then this class will be invoked. Because the person expression evaluates to a Person class, a
new Person is created and assigned to the null reference. Finally, the name is set on that object and the overall
effect is that the system automatically created a Person object for you, set it by calling setUsers() and then
finally called getUsers().setName() as you would typically expect.
- If the property is declared exactly as a
List, then an ArrayList shall be
returned and assigned to the null references.
- If the property is declared as a
Map, then a HashMap will be returned and assigned to the null
- If the null property is a simple bean with a no-arg constructor, it will simply be created using the
ObjectFactory.buildBean(java.lang.Class, java.util.Map) method.
|Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
public static final String CREATE_NULL_OBJECTS
- See Also:
- Constant Field Values
private static final Log LOG
public Object nullMethodResult(Map context,
- Specified by:
nullMethodResult in interface
public Object nullPropertyValue(Map context,
- Specified by:
nullPropertyValue in interface
private Object createObject(Class clazz,
Copyright © 2000-2008 Apache Software Foundation. All Rights Reserved.