Use macro to wrap HTML tags in velocity

This Example shows you how to use macro to wrap HTML tag in velocity template.

Use macro to wrap HTML tags in velocity

Use macro to wrap HTML tags in velocity

     

This Example shows you how to use macro to wrap HTML tag in velocity  template. The method used in this example are described below:- 

1:- Initialize velocity run time engine through method  init().
2:- Create object of VelocityContext Class.
3:- Create Template class object, Template  class object is used for controlling template methods and properties.

template.merge(context, writer): Merge method of the Template class is used here for merging  the VelocityContext class object to produce the output. Template  class object is used for controlling template methods and properties.

#macro( function ): This is the method for creating function in .vm file.

#function(): By using this we will call the function created previously.


 

MacroToWrapHTML.java

import java.io.*;

import org.apache.velocity.*;
import org.apache.velocity.app.Velocity;
import org.apache.velocity.tools.generic.IteratorTool;

public class MacroToWrapHTML {

  public static void main(String[] argsthrows Exception {
  Velocity.init();

  Template template = Velocity.getTemplate("./src/MacroToWrapHTML.vm");

  VelocityContext context = new VelocityContext();
  context.put("var"new MacroToWrapHTML());

  Writer writer = new StringWriter();
  template.merge(context, writer);

  System.out.println(writer);
  }

MacroToWrapHTML.vm
#macro( function )
<tr>
<td>
	komal
</td>
</tr>
#end

#function()

Output:
komal

Download code