org.apache.velocity
Class Template
java.lang.Object
|
+--org.apache.velocity.runtime.resource.Resource
|
+--org.apache.velocity.Template
- public class Template
- extends Resource
This class is used for controlling all template
operations. This class uses a parser created
by JavaCC to create an AST that is subsequently
traversed by a Visitor.
Template template = Velocity.getTemplate("test.wm");
Context context = new VelocityContext();
context.put("foo", "bar");
context.put("customer", new Customer());
template.merge(context, writer);
- Version:
- $Id: Template.java,v 1.36.4.1 2004/03/03 22:28:24 geirm Exp $
- Author:
- Jason van Zyl, Geir Magnusson Jr.
Field Summary |
private java.lang.Exception |
errorCondition
|
private boolean |
initialized
To keep track of whether this template has been
initialized. |
Constructor Summary |
Template()
Default constructor |
Method Summary |
void |
initDocument()
initializes the document. |
void |
merge(Context context,
java.io.Writer writer)
The AST node structure is merged with the
context to produce the final output. |
boolean |
process()
gets the named resource as a stream, parses and inits |
Methods inherited from class org.apache.velocity.runtime.resource.Resource |
getData, getEncoding, getLastModified, getName, getResourceLoader, isSourceModified, requiresChecking, setData, setEncoding, setLastModified, setModificationCheckInterval, setName, setResourceLoader, setRuntimeServices, touch |
Methods inherited from class java.lang.Object |
, clone, equals, finalize, getClass, hashCode, notify, notifyAll, registerNatives, toString, wait, wait, wait |
initialized
private boolean initialized
- To keep track of whether this template has been
initialized. We use the document.init(context)
to perform this.
errorCondition
private java.lang.Exception errorCondition
Template
public Template()
- Default constructor
process
public boolean process()
throws ResourceNotFoundException,
ParseErrorException,
java.lang.Exception
- gets the named resource as a stream, parses and inits
- Overrides:
process
in class Resource
- Returns:
- true if successful
- Throws:
ResourceNotFoundException
- if template not found
from any available source.ParseErrorException
- if template cannot be parsed due
to syntax (or other) error.java.lang.Exception
- some other problem, should only be from
initialization of the template AST.
initDocument
public void initDocument()
throws java.lang.Exception
- initializes the document. init() is not longer
dependant upon context, but we need to let the
init() carry the template name down throught for VM
namespace features
merge
public void merge(Context context,
java.io.Writer writer)
throws ResourceNotFoundException,
ParseErrorException,
MethodInvocationException,
java.lang.Exception
- The AST node structure is merged with the
context to produce the final output.
Throws IOException if failure is due to a file related
issue, and Exception otherwise
- Parameters:
context
- Conext with data elements accessed by templatewriter
- output writer for rendered template- Throws:
ResourceNotFoundException
- if template not found
from any available source.ParseErrorException
- if template cannot be parsed due
to syntax (or other) error.java.lang.Exception
- anything else.
Copyright © 2002 Apache Software Foundation. All Rights Reserved.