org.apache.velocity.tools.view.jsp
Class VelocityViewTag

java.lang.Object
  extended by javax.servlet.jsp.tagext.TagSupport
      extended by javax.servlet.jsp.tagext.BodyTagSupport
          extended by org.apache.velocity.tools.view.jsp.VelocityViewTag
All Implemented Interfaces:
java.io.Serializable, javax.servlet.jsp.tagext.BodyTag, javax.servlet.jsp.tagext.IterationTag, javax.servlet.jsp.tagext.Tag

public class VelocityViewTag
extends javax.servlet.jsp.tagext.BodyTagSupport

This tag enables use of Velocity and VelocityTools within JSP files and tags. This makes it trivial to render embedded VTL (Velocity Template Language) or include a separate Velocity template within a JSP using the current page context. This also automatically provides the typical VelocityView toolbox support, much like the VelocityViewServlet and VelocityLayoutServlets have. In fact, this will by default share the VelocityView instance used with those servlets. This allows for consistent configuration and shared resources (better performance).

Since:
VelocityTools 2.0
Version:
$Id: VelocityViewTag.java,v 1.1 2001/08/14 00:07:39 geirm Exp $
Author:
Nathan Bubna
See Also:
Serialized Form

Field Summary
protected  java.lang.String bodyContentKey
           
private  boolean cache
           
protected  ViewToolContext context
           
static java.lang.String DEFAULT_BODY_CONTENT_KEY
           
protected  org.apache.velocity.runtime.resource.util.StringResourceRepository repository
           
protected  java.lang.String scope
           
private static long serialVersionUID
           
protected  java.lang.String template
           
protected  java.lang.String var
           
protected  VelocityView view
           
 
Fields inherited from class javax.servlet.jsp.tagext.BodyTagSupport
bodyContent
 
Fields inherited from class javax.servlet.jsp.tagext.TagSupport
id, pageContext
 
Fields inherited from interface javax.servlet.jsp.tagext.BodyTag
EVAL_BODY_BUFFERED, EVAL_BODY_TAG
 
Fields inherited from interface javax.servlet.jsp.tagext.IterationTag
EVAL_BODY_AGAIN
 
Fields inherited from interface javax.servlet.jsp.tagext.Tag
EVAL_BODY_INCLUDE, EVAL_PAGE, SKIP_BODY, SKIP_PAGE
 
Constructor Summary
VelocityViewTag()
           
 
Method Summary
protected  void cache(java.lang.String name, java.lang.String template)
           
 int doEndTag()
           
 int doStartTag()
           
protected  void evalBody(java.io.Writer out)
           
 java.lang.String getBodyContentKey()
           
 java.lang.String getCache()
           
protected  java.lang.String getLogId()
           
protected  java.lang.String getRenderedBody()
           
 org.apache.velocity.runtime.resource.util.StringResourceRepository getRepository()
           
 java.lang.String getScope()
           
 java.lang.String getTemplate()
           
 java.lang.String getVar()
           
 VelocityView getVelocityView()
           
 ViewToolContext getViewToolContext()
           
protected  boolean hasContent()
           
protected  void initializeView()
           
protected  boolean isCached()
           
 void release()
          Release any per-instance resources, releasing any resources or state before this tag instance is disposed.
protected  void renderBody(java.io.Writer out)
           
protected  void renderContent(java.io.Writer out)
           
protected  void reset()
          Release any per-invocation resources, resetting any resources or state that should be cleared between successive invocations of Tag.doEndTag() and Tag.doStartTag().
 void setBodyContentKey(java.lang.String key)
           
 void setCache(java.lang.String s)
           
 void setId(java.lang.String id)
           
 void setRepository(org.apache.velocity.runtime.resource.util.StringResourceRepository repo)
           
 void setScope(java.lang.String scope)
           
 void setTemplate(java.lang.String template)
           
 void setVar(java.lang.String var)
           
 void setVelocityView(VelocityView view)
           
 void setViewToolContext(ViewToolContext context)
           
protected static int toScopeInt(java.lang.String scope)
           
 
Methods inherited from class javax.servlet.jsp.tagext.BodyTagSupport
doAfterBody, doInitBody, getBodyContent, getPreviousOut, setBodyContent
 
Methods inherited from class javax.servlet.jsp.tagext.TagSupport
findAncestorWithClass, getId, getParent, getValue, getValues, removeValue, setPageContext, setParent, setValue
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface javax.servlet.jsp.tagext.Tag
getParent, setPageContext, setParent
 

Field Detail

DEFAULT_BODY_CONTENT_KEY

public static final java.lang.String DEFAULT_BODY_CONTENT_KEY
See Also:
Constant Field Values

serialVersionUID

private static final long serialVersionUID
See Also:
Constant Field Values

view

protected transient VelocityView view

context

protected transient ViewToolContext context

repository

protected transient org.apache.velocity.runtime.resource.util.StringResourceRepository repository

var

protected java.lang.String var

scope

protected java.lang.String scope

template

protected java.lang.String template

bodyContentKey

protected java.lang.String bodyContentKey

cache

private boolean cache
Constructor Detail

VelocityViewTag

public VelocityViewTag()
Method Detail

reset

protected void reset()
Release any per-invocation resources, resetting any resources or state that should be cleared between successive invocations of Tag.doEndTag() and Tag.doStartTag().


setId

public void setId(java.lang.String id)
Overrides:
setId in class javax.servlet.jsp.tagext.TagSupport

getLogId

protected java.lang.String getLogId()

setVar

public void setVar(java.lang.String var)

getVar

public java.lang.String getVar()

setScope

public void setScope(java.lang.String scope)

getScope

public java.lang.String getScope()

setTemplate

public void setTemplate(java.lang.String template)

getTemplate

public java.lang.String getTemplate()

setBodyContentKey

public void setBodyContentKey(java.lang.String key)

getBodyContentKey

public java.lang.String getBodyContentKey()

setCache

public void setCache(java.lang.String s)

getCache

public java.lang.String getCache()

getVelocityView

public VelocityView getVelocityView()

setVelocityView

public void setVelocityView(VelocityView view)

getViewToolContext

public ViewToolContext getViewToolContext()

setViewToolContext

public void setViewToolContext(ViewToolContext context)

getRepository

public org.apache.velocity.runtime.resource.util.StringResourceRepository getRepository()

setRepository

public void setRepository(org.apache.velocity.runtime.resource.util.StringResourceRepository repo)

doStartTag

public int doStartTag()
               throws javax.servlet.jsp.JspException
Specified by:
doStartTag in interface javax.servlet.jsp.tagext.Tag
Overrides:
doStartTag in class javax.servlet.jsp.tagext.BodyTagSupport
Throws:
javax.servlet.jsp.JspException

doEndTag

public int doEndTag()
             throws javax.servlet.jsp.JspException
Specified by:
doEndTag in interface javax.servlet.jsp.tagext.Tag
Overrides:
doEndTag in class javax.servlet.jsp.tagext.BodyTagSupport
Throws:
javax.servlet.jsp.JspException

initializeView

protected void initializeView()

hasContent

protected boolean hasContent()

renderContent

protected void renderContent(java.io.Writer out)
                      throws java.lang.Exception
Throws:
java.lang.Exception

getRenderedBody

protected java.lang.String getRenderedBody()
                                    throws java.lang.Exception
Throws:
java.lang.Exception

isCached

protected boolean isCached()

renderBody

protected void renderBody(java.io.Writer out)
                   throws java.lang.Exception
Throws:
java.lang.Exception

evalBody

protected void evalBody(java.io.Writer out)
                 throws java.lang.Exception
Throws:
java.lang.Exception

toScopeInt

protected static int toScopeInt(java.lang.String scope)

cache

protected void cache(java.lang.String name,
                     java.lang.String template)

release

public void release()
Release any per-instance resources, releasing any resources or state before this tag instance is disposed.

Specified by:
release in interface javax.servlet.jsp.tagext.Tag
Overrides:
release in class javax.servlet.jsp.tagext.BodyTagSupport
See Also:
Tag.release()


Copyright (c) 2003-2007 Apache Software Foundation