org.apache.struts2.views.freemarker
Class StrutsBeanWrapper

java.lang.Object
  extended by freemarker.ext.beans.BeansWrapper
      extended by org.apache.struts2.views.freemarker.StrutsBeanWrapper
All Implemented Interfaces:
freemarker.template.ObjectWrapper

public class StrutsBeanWrapper
extends freemarker.ext.beans.BeansWrapper

The StrutsBeanWrapper extends the default FreeMarker BeansWrapper and provides almost no change in functionality, except for how it handles maps. Normally, FreeMarker has two modes of operation: either support for friendly map built-ins (?keys, ?values, etc) but only support for String keys; OR no special built-in support (ie: ?keys returns the methods on the map instead of the keys) but support for String and non-String keys alike. Struts provides an alternative implementation that gives us the best of both worlds.

It is possible that this special behavior may be confusing or can cause problems. Therefore, you can set the struts.freemarker.wrapper.altMap property in struts.properties to false, allowing the normal BeansWrapper logic to take place instead.


Nested Class Summary
 
Nested classes/interfaces inherited from class freemarker.ext.beans.BeansWrapper
freemarker.ext.beans.BeansWrapper.MethodAppearanceDecision
 
Field Summary
 
Fields inherited from class freemarker.ext.beans.BeansWrapper
EXPOSE_ALL, EXPOSE_NOTHING, EXPOSE_PROPERTIES_ONLY, EXPOSE_SAFE
 
Fields inherited from interface freemarker.template.ObjectWrapper
BEANS_WRAPPER, DEFAULT_WRAPPER, SIMPLE_WRAPPER
 
Constructor Summary
StrutsBeanWrapper(boolean altMapWrapper)
           
 
Method Summary
protected  freemarker.ext.util.ModelFactory getModelFactory(Class clazz)
           
 
Methods inherited from class freemarker.ext.beans.BeansWrapper
coerceBigDecimal, coerceBigDecimals, coerceBigDecimals, finetuneMethodAppearance, getDefaultDateType, getDefaultInstance, getEnumModels, getInstance, getOuterIdentity, getStaticModels, isExposeFields, isSimpleMapWrapper, isStrict, newInstance, setDefaultDateType, setExposeFields, setExposureLevel, setMethodsShadowItems, setNullModel, setOuterIdentity, setSimpleMapWrapper, setStrict, setUseCache, unwrap, unwrap, wrap
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

StrutsBeanWrapper

public StrutsBeanWrapper(boolean altMapWrapper)
Method Detail

getModelFactory

protected freemarker.ext.util.ModelFactory getModelFactory(Class clazz)
Overrides:
getModelFactory in class freemarker.ext.beans.BeansWrapper


Copyright © 2000-2012 Apache Software Foundation. All Rights Reserved.