Overview
The display tag library is an open source suite of custom tags that provide high-level web presentation patterns which will work in an MVC model. The library provides a significant amount of functionality while still being easy to use.
Requirements
- Download the display tag libraries from site . or use maven dependency
<dependency>
<groupId>displaytag</groupId>
<artifactId>displaytag</artifactId>
<version>1.1</version>
</dependency>
- In jsp file import taglib
<%@taglib prefix="display" uri="http://displaytag.sf.net" %>
Note : Display tag internally use the 'TableTag.properties' file. If we really want to customize the display tag we need create the 'display.properties' file or add the properties in <display:set> tag in jsp . Put the 'display.properties' file in your class path . If you want to customize the css of table that generate by the <display> tag , create a css file and name the css file and create the class 'displayTable' and set the class attribute of <display> tag is 'displayTable' .
The example of display tag as below :
<display:table id="user" name="${users}" pagesize="2" class="displayTable "requestRI="listUsers.htm">
<display:column property="userinfo.firstname" title="First Name" />
<display:column property="userinfo.lastname" title="Last Name" />
<display:column property="userName" title="Login" />
<display:column title="Email" >
<a href="mailto:${user.userinfo.email}">${user.userinfo.email}</a>
</display:column>
<c:forEach var="roles" items="${roles}" >
<display:column title="${roles.name}">
<c:forEach var="roleOfUser" items="${user.userRoles}">
<c:set var="roleId" value="${roleOfUser.role}"></c:set>
<c:choose>
<c:when test="${roleId.id eq roles.id }">
<i class="icon-ok"></i>
</c:when>
</c:choose>
</c:forEach>
</display:column>
</c:forEach>
<display:column title="Edit" >
<a href="#" onclick="javascript:window.location.href='editUser.htm?userName=${userList.userName}';">
<i class="icon-pencil"></i>
</a>
</display:column>
<display:column title="Delete">
<a href="deleteUser.htm?id=${userList.userName}" onclick="return confirm('Warning: This deletes the data from everywhere! Are you sure?')">
<i class="icon-remove"></i>
</a>
</display:column>
<display:setProperty name="paging.banner.placement" value="bottom" />
<display:setProperty name="basic.msg.empty_list" value="No Records Found" /> </display:table>