Package freemarker.ext.beans

Provides model implementations that allow access to arbitrary Java objects.

See:
          Description

Class Summary
ArrayModel A class that will wrap an arbitrary array into TemplateCollectionModel and TemplateSequenceModel interfaces.
BeanModel A class that will wrap an arbitrary object into TemplateHashModel interface allowing calls to arbitrary property getters and invocation of accessible methods on the object from a template using the object.foo to access properties and object.bar(arg1, arg2) to invoke methods on it.
BeansModelCache  
BeansWrapper Utility class that provides generic services to reflection classes.
BooleanModel A class that will wrap instances of Boolean into a TemplateBooleanModel.
CollectionModel A special case of BeanModel that can wrap Java collections and that implements the TemplateCollectionModel in order to be usable in a <foreach> block.
DateModel Wraps arbitrary subclass of Date into a reflective model.
EnumerationModel A class that adds TemplateModelIterator functionality to the Enumeration interface implementers.
HashAdapter  
IteratorModel A class that adds TemplateModelIterator functionality to the Iterator interface implementers.
MapModel A special case of BeanModel that adds implementation for TemplateMethodModelEx on map objects that is a shortcut for the Map.get() method.
NumberModel Wraps arbitrary subclass of Number into a reflective model.
ResourceBundleModel A hash model that wraps a resource bundle.
SimpleMapModel Model used by BeansWrapper when simpleMapWrapper mode is enabled.
SimpleMethodModel A class that will wrap a reflected method call into a TemplateMethodModel interface.
StringModel Subclass of BeanModel that exposes the return value of the Object.toString() method through the TemplateScalarModel interface.
 

Exception Summary
InvalidPropertyException An exception thrown when there is an attempt to access an invalid bean property when we are in a "strict bean" mode
 

Package freemarker.ext.beans Description

Provides model implementations that allow access to arbitrary Java objects.

Most of the issues dealing with beans are handled by the BeansWrapper.wrap(Object)and BeansWrapper.getStaticModels() methods. In normal cases, these are the only methods you should use to turn an arbitrary Java object into a FreeMarker TemplateModel. Additionally, you can manually create instance of any wrapper class using its constructors. Note, however that in such cases you bypass the eventual model caching of the wrapper.