Configuring your action to use the freemarker result type
Freemarker views are rendered via the webwork result type freemarker, or by using the dispatcher result type in conjunction Webwork's FreemarkerServlet.
We use the freemarker result type which is defined in xwork-community.xml, so you can simply use it like so:
<action name="test" class="package.Test">
<result name="success" type="freemarker">
/templates/testView.ftl
</result>
</action>
Since freemarker is defined as the default result type, type="freemarker" is not necessary when declaring your action.
Property Resolution
Your action properties are automatically resolved. FOR EXAMPLE:
${name} will result in stack.findValue("name"), which generally results in action.getName() being executed.
A search process is used to resolve the variable, searching the following scopes in order, until a value is found:
1.) Freemarker Variables
2.) Webwork Value Stack
3.) Request Attributes
4.) Session Attributes
5.) Servlet Context Attributes
Objects in the Context
Webwork objects added to the context
request - the current HttpServletRequest
response - the current HttpServletResponse
stack - the current OgnlValueStack
ognl - the OgnlTool instance. This class contains useful methods to execute OGNL expressions against arbitary objects
webwork ? an instance of FreemarkerWebWorkUtil
action - the current WebWork action
exception - optional the Exception instance, if the view is a JSP exception or Servlet exception
Jive objects added to the context
JiveGlobals
JiveConstants
LocaleUtils
StringUtils
DateUtils
SkinUtils
Permissions
IMSettingsUtils
ActionUtils
RSSActionSupport
ViewCountManager
CommunityUtils
BlogUtils
FeedUtils
WikiUtils
LicenseManager
DocumentPermHelper
MessagePermHelper
${JiveGlobals.getJiveProperty(?skin.defaultHeader?)?default(?Community Home?)}
In addition, static models and enums can be referenced as so:
${statics('com.jivesoftware.community.action.CommunityAction').VIEW_OVERVIEW}
${enums('com.jivesoftware.community.SearchQueryCriteria$SortType').RELEVANCE.key?c}
where ) is replaced with ] and ( is replaced with [