Mega Code Archive

 
Categories / Java Tutorial / JSTL
 

Parse XML and Path Select

<%@ taglib uri="http://java.sun.com/jstl/core" prefix="c" %> <%@ taglib uri="http://java.sun.com/jstl/xml" prefix="x" %> <html>   <head>     <title>Parse Examples</title>   </head>   <body>Please enter an XML file:   <br />   <form method="post">     <textarea rows="10" cols="50" name="xml">       <students>         <student id="1">           <name>             <first>A</first>             <last>B</last>             <middle>T</middle>           </name>           <grade>             <points>88</points>             <letter>B</letter>           </grade>         </student>         <student id="2">           <name>             <first>C</first>             <last>D</last>             <middle>K</middle>           </name>           <grade>             <points>92</points>             <letter>A</letter>           </grade>         </student>       </students>     </textarea>     <br />     <input type="submit" />   </form>   <c:if test="${pageContext.request.method=='POST'}">     <x:parse var="doc" xml="${param.xml}"  />     <table border="1">       <tr>         <td>$doc/students/student/name/first</td>         <td>           <x:out select="$doc/students/student/name/first" />         </td>       </tr>       <tr>         <td>$doc/students/student[@id=2]/name/first</td>         <td>           <x:out           select="$doc/students/student[@id=2]/name/first" />         </td>       </tr>       <tr>         <td>$doc/students/student[@id=1]/name/first</td>         <td>           <x:out           select="$doc/students/student[@id=12]/name/first" />         </td>       </tr>     </table>   </c:if>   </body> </html> <?xml version="1.0" encoding="ISO-8859-1"?> <students>    <student id="1">       <name>          <first>A</first>          <last>B</last>          <middle>T</middle>       </name>       <grade>          <points>88</points>          <letter>B</letter>       </grade>    </student>    <student id="2">       <name>          <first>C</first>          <last>D</last>          <middle>K</middle>       </name>       <grade>          <points>92</points>          <letter>A</letter>       </grade>    </student>    <student id="3">       <name>          <first>E</first>          <last>F</last>          <middle>A</middle>       </name>       <grade>          <points>72</points>          <letter>C</letter>       </grade>    </student>     </students>