Provides model implementations that allow access to arbitrary Java objects.
Most of the issues dealing with beans are handled by the
{@link freemarker.ext.beans.BeansWrapper#wrap(Object)}and {@link
freemarker.ext.beans.BeansWrapper#getStaticModels()} methods. In normal cases,
these are the only methods
you should use to turn an arbitrary Java object into a
FreeMarker {@link freemarker.template.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.
A class that will wrap an arbitrary object into
freemarker.template.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.