JSTL c:choose, c:when and c:otherwise Core Tags

The JSTL <c:choose> Core Tag is used when several alternatives are available for a particular condition. It works the same as of switch statement in Java. The <c:choose> is like a switch, <c:when> is like the case, and <c:otherwise> is like a default statement.

 

Syntax:

<c:choose>
 
    <c:when test="${testCondition1}">
       //block of statements
    </c:when>
 
    <c:when test="${testCondition2}">
        //block of statements
    </c:when>
 
      //Other <c:when>
 
    <c:otherwise>
        //block of statements
    </c:otherwise>
 
</c:choose>

 

c:when tag attributes:

Attribute Description Required
test It specifies the condition to evaluate. No

 

Note: c:choose and c:otherwise tags do not have any attribute.

 

Example:

test.jsp

<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
 
<html>
    <head>
     <title>
          c:choose, c:when and c:otherwise JSTL core tag example
         </title>
    </head>
    <body>
        <c:set var="num" value="100"/>
        <c:choose>
            <c:when test="${num > 10}">
                Number is greater than 10.
            </c:when>
            <c:otherwise>
                Number is less than or equal to 10.
            </c:otherwise>
        </c:choose>
    </body>
</html>

 

web.xml

<web-app>
 
  <welcome-file-list>
          <welcome-file>test.jsp</welcome-file>
  </welcome-file-list>	
 
</web-app>