Display a list of java objects in velocity templates as html table
java, velocity
Solution
Try the following:
<tbody>
#foreach( $obj in $objs )
<tr><td>$obj.Item1</td><td>$obj.Item2</td></tr>
#end
<tbody>
I assume that your list is put on the velocity context under the name `objs` and your `SomeObject` class has 2 fields: item1 and item2 with coresponding getters.
List<SomeObject> objs = ... //prepopulated
context.put("objs", objs);
See more on the velocity documentation.
Problem
I am fetching a list of objects from DB. I would like to populate them in to a html table using velocity templates. ``` <table> <thead> <tr> <td>$value1 </td> <td>$value2 </td> </tr> </thead> <tbody> <!-- Iterate through the list (List<SomeObject>) and display them here, --> </tbody> </table> ``` For headers I am using the below code, ``` VelocityContext context = new VelocityContext(); context.put("value1", "text1"); context.put("value2", "text2"); ``` I get data from objects as below, ``` List<SomeObject> obj = new ArrayList<SomeObject>(); obj.getItem1(); obj.getItem2(); ``` All the individual items are Strings. How to populate the table body content?