Sunday, April 26, 2009

JSP Tutorial 8 JSP Tags

Another important syntax element of JSP are tags.  JSP tags do not
use <%, but just the < character. 
A JSP tag is somewhat like an HTML tag.  JSP tags can have a "start
tag", a "tag body" and an "end tag".  The start and end tag both use
the tag name, enclosed in < and > characters. 
The end starts with a / character after the < character. 
The tag names have an embedded colon character : in them, the
part before the colon describes the type of the tag.  For instance:
<some:tag>
body
</some:tag>

If the tag does not require a body, the start and end can be conveniently
merged together, as
<some:tag/>

Here by closing the start tag with a /> instead of > character, we are
ending the tag immediately, and without a body.  (This syntax convention
is the the same as XML.)

Tags can be of two types: loaded from an external tag library, or predefined
tags.   Predefined tags start with jsp: characters. 
For instance, jsp:include is a predefined tag that is used to
include other pages.

We have already seen the include directive.  jsp:include
is similar.  But instead of loading the text of the included file
in the original file, it actually calls the included target at run-time
(the way a browser would call the included target.  In practice, this
is actually a simulated request rather than a full round-trip between the
browser and the server).  Following is an example of jsp:include
usage

<HTML>
<BODY>
Going to include hello.jsp...<BR>
<jsp:include page="hello.jsp"/>
</BODY>
</HTML>

Try it and see what you get.  Now change the "jsp:include"
to "jsp:forward" and see what is the difference.  These two
predefined tags are frequently very useful.

Exercise:  Write a JSP to do either a forward or
an include, depending upon a boolean variable (hint:  The
concepts of mixing HTML and scriptlets work with JSP tags also!)

No comments:

Post a Comment