Struts Tag Library
Tag
JSTL Replacement
Bean
cookie
c:set
Bean
define
c:set
Bean
header
c:set
Bean
include
c:import
Bean
parameter
c:set
Bean
write
c:out
Logic
empty
c:if, c:when
Logic
equal
c:if, c:when
Logic
greaterEqual
c:if, c:when
Logic
greaterThan
c:if, c:when
Logic
iterate
c:forEach
Logic
lessEqual
c:if, c:when
Logic
lessThan
c:if, c:when
Logic
notEmpty
c:if, c:when
Logic
notEqual
c:if, c:when
The following sections provide examples for replacing Struts tag library tags with their JSTL equivalents. Remember that not all the Bean, HTML, and Logic tags can be replaced by JSTL tags.
The following snippet shows the basic usage of the cookie tag from the Bean Tag Library:
<bean:cookie id="category" name="cat"/>
The JSTL equivalent is as follows:
<c:set var="category" value="${cookie['cat'].value}"/>
This example accesses the cat cookie with a JSTL expression that makes use of the JSTL implicit cookie object.
The following snippet shows the basic usage of the define tag from the Bean Tag Library:
<bean:define id="name" name="nameObj"/>
The JSTL equivalent is as follows:
<c:set var="name" value="${nameObj}"/>
The following snippet shows the basic usage of the header tag from the Bean Tag Library:
<bean:header id="browser" name="User-Agent"/>
The JSTL equivalent is as follows:
<c:set var="browser" value="${header['User-Agent']}"/>
This example accesses the "User-Agent" header with a JSTL expression that makes use of the JSTL implicit header object.
The following snippet shows the basic usage of the include tag from the Bean Tag Library:
The JSTL equivalent is as follows:
<c:import var="yahooContents" url=" http://www.yahoo.com/"/>
The following snippet shows the basic usage of the parameter tag from the Bean Tag Library:
<bean:parameter id="color" name="clr"/>
The JSTL equivalent is as follows:
<c:set var="color" value="${param['clr']}"/>
This example accesses the clr parameter with a JSTL expression that makes use of the JSTL implicit param object.
The following snippet shows the basic usage of the write tag from the Bean Tag Library:
<bean:write name="bizObj"/>
The JSTL equivalent is as follows:
<c:out value="${bizObj}" />
The following snippet shows the basic usage of the empty tag from the Logic Tag Library:
<logic:empty name="results"> Your search yielded no results. </logic:empty>
The JSTL equivalent is as follows:
<c:if test="${empty results}"> Your search yielded no results. </c:if>
The following snippet shows the basic usage of the equal tag from the Logic Tag Library:
<logic:equal name="count" value="0"> Count is zero. </logic:equal>
The JSTL equivalent is as follows:
<c:if test="${count == 0}"> Count is zero. </c:if>
The following snippet shows the basic usage of the greaterEqual tag from the Logic Tag Library:
<logic:greaterEqual name="count" value="5"> Count is greater than or equal to five. </logic:greaterEqual>
The JSTL equivalent is as follows:
<c:if test="${count >= 5}"> Count is greater than or equal to five. </c:if>
The following snippet shows the basic usage of the greaterThan tag from the Logic Tag Library:
<logic:greaterThan name="count" value="5"> Count is greater than five. </logic:greaterThan>
The JSTL equivalent is as follows:
<c:if test="${count > 5}"> Count is greater than five. </c:if>
The following snippet shows the basic usage of the iterate tag from the Logic Tag Library:
<logic:iterate id="result" collection="<%=results%>"> Result: <%=result%><br> </logic:iterate>
The JSTL equivalent is as follows:
<c:forEach var="result" items="${results}"> Result: <c:out value="${result}"/> </c:forEach>
The following snippet shows the basic usage of the lessEqual tag from the Logic Tag Library:
<logic:lessEqual name="count" value="5"> Count is less than or equal to five. </logic:lessEqual>
The JSTL equivalent is as follows:
<c:if test="${count <= 5}"> Count is less than or equal to five. </c:if>
The following snippet shows the basic usage of the lessThan tag from the Logic Tag Library:
<logic:lessThan name="count" value="5"> Count is less than five. </logic:lessThan>
The JSTL equivalent is as follows:
<c:if test="${count < 5}"> Count is less than five. </c:if>
The following snippet shows the basic usage of the notEmpty tag from the Logic Tag Library:
<logic:notEmpty name="results"> Your search returned results! </logic:notEmpty>
The JSTL equivalent is as follows:
<c:if test="${!empty results}"> Your search returned results! </c:if>
The following snippet shows the basic usage of the notEqual tag from the Logic Tag Library:
<logic:notEqual name="count" value="0"> Count is not equal to zero. </logic:notEqual>
The JSTL equivalent is as follows:
<c:if test="${count != 0}"> Count is not equal to zero. </c:if>