JSTL - XML <x:parse> Tag

The <x:parse> tag is used to parse the XML data specified either via an attribute or in the tag body.


The <x:parse> tag has the following attributes −

Attribute Description Required Default
var A variable that contains the parsed XML data No None
xml Text of the document to parse (String or Reader) No Body
systemId The system identifier URI for parsing the document No None
filter The filter to be applied to the source document No None
doc XML document to be parsed No Page
scope Scope of the variable specified in the var attribute No Page
varDom A variable that contains the parsed XML data No Page
scopeDom Scope of the variable specified in the varDom attribute No Page


The following example shows how parse can be used to read the external XML file −

We have seen how we can parse XML from the body of the given document. Let us now put following content in the books.xml file −

      <name>Padam History</name>
      <name>Great Mistry</name>

Now try the following main.jsp, keeping in the same directory −

<%@ taglib prefix = "c" uri = "http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix = "x" uri = "http://java.sun.com/jsp/jstl/xml" %>

      <title>JSTL x:parse Tags</title>

      <h3>Books Info:</h3>
      <c:import var = "bookInfo" url = "http://localhost:8080/books.xml"/>

      <x:parse xml = "${bookInfo}" var = "output"/>
      <b>The title of the first book is</b>: 
      <x:out select = "$output/books/book[1]/name" />
      <b>The price of the second book</b>: 
      <x:out select = "$output/books/book[2]/price" />


Access the above JSP using http://localhost:8080/main.jsp, the following result will be displayed −

Books Info:

The title of the first book is:Padam History

The price of the second book: 2000

Kickstart Your Career

Get certified by completing the course

Get Started