This tag works with two other tags named <x: when>,<x:otherwise>. In other words if we define this tags resembles like switch statement from primitive JAVA code. User has to choose according to requirement which statement will be selected and run.
Worker.xml
<?xml version=”1.0″ ?>
<workers>
<wrkr>
<name>Raj</name>
<age>23</age>
<dob>12-07-1992</dob>
</wrkr>
<wrkr>
<name>Suresh</name>
<age>30</age>
<dob>13-03-1984</dob>
</wrkr>
<wrkr>
<name>Mohit</name>
<age>20</age>
<dob>10-05-1994</dob>
</wrkr>
<wrkr>
<name>Ram</name>
<age>35</age>
<dob>1-03-1979</dob>
</wrkr>
</workers>
Choose.jsp
<%@ taglib uri=”http://java.sun.com/jsp/jstl/core” prefix=”c” %>
<%@ taglib uri=”http://java.sun.com/jsp/jstl/xml” prefix=”x” %>
<html>
<head>
<title><x:choose>,<x:when>,<x:otherwise> Tags In JSTL</title>
</head>
<body>
<center><b><h3>Worker Info:</h3></b></center>
<c:import url=”workers.xml” var=”lbr”/>
<x:parse xml=”${lbr}” var=”disp”/>
<x:choose>
<x:when select=”$disp//wrkr/name = ‘Raj'”>
<p><b><center>The First Worker is Raj</center></b></p>
</x:when>
<x:when select=”$disp//wrkr/name = ‘Suresh'”>
<br /><p><b><center>The Second Worker is Suresh</center></b></p>
</x:when>
<x:otherwise>
<br /><p><center><b>Finding….</b></center></p>
</x:otherwise>
</x:choose>
</body>
</html>
As we discuss above that this tag is resembles to Switch statement of primitive java Code. In this program the Conditions are lying as their required place the selected condition will be display on output lane. If one does gone wrong the other one will be selected if nothing lied true the Otherwise Condition will run (default in Java Statement). The mandatory attributes are also used in the program like var the variable name that will represent the stored value in it. At last instance all the HTML tags will be closed.