background image

URL Tags

<< The forTokens tag | Miscellaneous Tags >>
<< The forTokens tag | Miscellaneous Tags >>

URL Tags

URL Tags
The jsp:include element provides for the inclusion of static and dynamic resources in the
same context as the current page. However, jsp:include cannot access resources that reside
outside the web application, and it causes unnecessary buffering when the resource included is
used by another element.
In the following example, the transform element uses the content of the included resource as
the input of its transformation. The jsp:include element reads the content of the response and
writes it to the body content of the enclosing transform element, which then rereads exactly the
same content. It would be more efficient if the transform element could access the input source
directly and thereby avoid the buffering involved in the body content of the transform tag.
<acme:transform>
<jsp:include page=
"/exec/employeesList"/>
<acme:transform/>
The import tag is therefore the simple, generic way to access URL-based resources, whose
content can then be included and or processed within the JSP page. For example, in
"XML Tag
Library" on page 211
, import is used to read in the XML document containing book
information and assign the content to the scoped variable xml:
<c:import url=
"/books.xml" var="xml" />
<x:parse doc=
"${xml}" var="booklist"
scope=
"application" />
The param tag, analogous to the jsp:param tag (see
"jsp:param Element" on page 176
), can be
used with import to specify request parameters.
"Session Tracking" on page 127
discusses how an application must rewrite URLs to enable
session tracking whenever the client turns off cookies. You can use the url tag to rewrite URLs
returned from a JSP page. The tag includes the session ID in the URL only if cookies are
disabled; otherwise, it returns the URL unchanged. Note that this feature requires that the URL
be relative. The url tag takes param subtags to include parameters in the returned URL. For
example,
tut-install/javaeetutorial5/examples/web/bookstore4/web/books/bookcatalog.jsp
rewrites the URL used to add a book to the shopping cart as follows:
<c:url var=
"url" value="/catalog" >
<c:param name=
"Add" value="${bookId}" />
</c:url>
<p><strong><a href=
"${url}">
The redirect tag sends an HTTP redirect to the client. The redirect tag takes param subtags
for including parameters in the returned URL.
Core Tag Library
The Java EE 5 Tutorial · September 2007
210