org.apache.velocity

Class 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
ExceptionerrorCondition
booleaninitialized
To keep track of whether this template has been initialized.
Constructor Summary
Template()
Default constructor
Method Summary
voidinitDocument()
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
voidmerge(Context context, Writer writer)
The AST node structure is merged with the context to produce the final output.
booleanprocess()
gets the named resource as a stream, parses and inits

Field Detail

errorCondition

private Exception errorCondition

initialized

private boolean initialized
To keep track of whether this template has been initialized. We use the document.init(context) to perform this.

Constructor Detail

Template

public Template()
Default constructor

Method Detail

initDocument

public void initDocument()
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, Writer writer)
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 template writer 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. Exception anything else.

process

public boolean process()
gets the named resource as a stream, parses and inits

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. Exception some other problem, should only be from initialization of the template AST.

Copyright B) 2002 Apache Software Foundation. All Rights Reserved.