com.opensymphony.webwork.views.velocity
Class VelocityManager

java.lang.Object
  extended by com.opensymphony.webwork.views.velocity.VelocityManager

public class VelocityManager
extends Object

Manages the environment for Velocity result types

Author:
Matt Ho

Field Summary
static String PARENT
          the parent JSP tag
static String TAG
          the current JSP tag
protected  org.apache.velocity.tools.view.ToolboxManager toolboxManager
          A reference to the toolbox manager.
static String WEBWORK
           
 
Constructor Summary
protected VelocityManager()
           
 
Method Summary
 org.apache.velocity.context.Context createContext(OgnlValueStack stack, HttpServletRequest req, HttpServletResponse res)
          This method is responsible for creating the standard VelocityContext used by all WW2 velocity views.
static VelocityManager getInstance()
          retrieve an instance to the current VelocityManager
 org.apache.velocity.app.VelocityEngine getVelocityEngine()
           
 Properties getVelocityProperties()
           
protected  void init()
          performs one-time initializations
 void init(ServletContext context)
          initializes the VelocityManager.
protected  void initChainedContexts()
          allow users to specify via the webwork.properties file a set of additional VelocityContexts to chain to the the WebWorkVelocityContext.
protected  void initToolbox(ServletContext context)
          Initializes the ServletToolboxManager for this servlet's toolbox (if any).
 Properties loadConfiguration(ServletContext context)
          load optional velocity properties using the following loading strategy relative to the servlet context path relative to the WEB-INF directory on the classpath
protected  org.apache.velocity.app.VelocityEngine newVelocityEngine(ServletContext context)
          

Instantiates a new VelocityEngine.

protected  org.apache.velocity.VelocityContext[] prepareChainedContexts(HttpServletRequest servletRequest, HttpServletResponse servletResponse, Map extraContext)
          constructs contexts for chaining on this request.
 void setVelocityProperties(Properties velocityProperties)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

WEBWORK

public static final String WEBWORK
See Also:
Constant Field Values

PARENT

public static final String PARENT
the parent JSP tag

See Also:
Constant Field Values

TAG

public static final String TAG
the current JSP tag

See Also:
Constant Field Values

toolboxManager

protected org.apache.velocity.tools.view.ToolboxManager toolboxManager
A reference to the toolbox manager.

Constructor Detail

VelocityManager

protected VelocityManager()
Method Detail

getInstance

public static VelocityManager getInstance()
retrieve an instance to the current VelocityManager


getVelocityEngine

public org.apache.velocity.app.VelocityEngine getVelocityEngine()
Returns:
a reference to the VelocityEngine used by all webwork velocity thingies with the exception of directly accessed *.vm pages

createContext

public org.apache.velocity.context.Context createContext(OgnlValueStack stack,
                                                         HttpServletRequest req,
                                                         HttpServletResponse res)
This method is responsible for creating the standard VelocityContext used by all WW2 velocity views. The following context parameters are defined:

Returns:
a new WebWorkVelocityContext

prepareChainedContexts

protected org.apache.velocity.VelocityContext[] prepareChainedContexts(HttpServletRequest servletRequest,
                                                                       HttpServletResponse servletResponse,
                                                                       Map extraContext)
constructs contexts for chaining on this request. This method does not perform any initialization of the contexts. All that must be done in the context itself.

Parameters:
servletRequest -
servletResponse -
extraContext -
Returns:
an VelocityContext[] of contexts to chain

init

public void init(ServletContext context)
initializes the VelocityManager. this should be called during the initialization process, say by ServletDispatcher. this may be called multiple times safely although calls beyond the first won't do anything

Parameters:
context - the current servlet context

loadConfiguration

public Properties loadConfiguration(ServletContext context)
load optional velocity properties using the following loading strategy

Parameters:
context - the current ServletContext. may not be null
Returns:
the optional properties if webwork.velocity.configfile was specified, an empty Properties file otherwise

init

protected void init()
performs one-time initializations


initToolbox

protected void initToolbox(ServletContext context)
Initializes the ServletToolboxManager for this servlet's toolbox (if any).


initChainedContexts

protected void initChainedContexts()
allow users to specify via the webwork.properties file a set of additional VelocityContexts to chain to the the WebWorkVelocityContext. The intent is to allow these contexts to store helper objects that the ui developer may want access to. Examples of reasonable VelocityContexts would be an IoCVelocityContext, a SpringReferenceVelocityContext, and a ToolboxVelocityContext


newVelocityEngine

protected org.apache.velocity.app.VelocityEngine newVelocityEngine(ServletContext context)

Instantiates a new VelocityEngine.

The following is the default Velocity configuration

  resource.loader = file, class
  file.resource.loader.path = real path of webapp
  class.resource.loader.description = Velocity Classpath Resource Loader
  class.resource.loader.class = com.opensymphony.webwork.views.velocity.WebWorkResourceLoader
 

this default configuration can be overridden by specifying a webwork.velocity.configfile property in the webwork.properties file. the specified config file will be searched for in the following order:

Parameters:
context - the current ServletContext. may not be null

getVelocityProperties

public Properties getVelocityProperties()
Returns:
the velocityProperties

setVelocityProperties

public void setVelocityProperties(Properties velocityProperties)
Parameters:
velocityProperties - the velocityProperties to set

WebWork Project Page