113. The JSP Standard Tag
Library
Rev. 1.0
This course is now available directly from our partner, Capstone Courseware.
This two-day module introduces the JSTL, or JSP Standard Tag
Library, actually a set of four custom tag libraries that establish a portable
standard for common processing tasks in JSP.
JSTL is a major part of the new scriptless authoring style encouraged
(and enabled) by the JSP 2.0 specification.
This module covers all four JSTL libraries in depth:
·
The core actions, which support JSP expressions for JSP
1.x containers, flow control for procedural processing in JSPs, and resource
access
·
The formatting and internationalization/localization
actions, which standardize formatted numeric and date/time output as well as
multi-language support
·
The SQL actions, which dramatically simplify access to
relational data from a JSP
·
The XML actions, which give JSPs a simple, powerful
framework by which to parse, address and transform XML data using XPath and
XSLT
Each individual tag in each library is covered, with precise
syntactic rules shown in a standard format in the student guide, and JSTL
techniques and best practices are discussed for each library. An extensive set of example applications
illustrates common usage of each major group of actions, and the module
culminates with a wrap-up workshop that brings core, SQL, and XML techniques to
bear in a single application.
LEARNING OBJECTIVES
·
Describe the use of the JSP expression language to
simplify dynamic page output.
·
Write JSP expressions and implement JSPs that use them
in favor of scripts.
·
Implement JSPs that use basic JSTL actions to simplify
presentation logic.
·
Decompose a JSP application design into fine-grained,
reusable elements including JavaBeans, custom tag handlers and tag files that
use JSTL.
·
Use core JSTL actions to complement standard actions,
custom actions, and JSP expressions for seamless, script-free page logic.
·
Direct conditional and iterative processing of page
content by looping through ranges of numbers, over elements in a collection, or
over tokens in a master string.
·
Import external resources by URL for processing, or
redirect the JSP container to an external resource to handle the current
request.
·
Set locale and time zone information in JSPs, and use
them to correctly format numbers, dates and times for all clients.
·
Use resource bundles to manage application strings, and
produce the appropriate strings at runtime for a particular client locale.
·
Locate a data source, query for relational data, and
parse result sets.
·
Perform updates, inserts and deletes on relational data
using SQL actions.
·
Manage queries and updates in transaction contexts.
·
Parse XML content from a variety of sources.
·
Derive information from parsed XML content using XPath
expressions.
·
Implement conditional processing and loops based on XML
information.
·
Apply XSLT transformations to XML content.
·
Implement a simple Web service that reads and writes
SOAP.
Duration: 2 days.
Prerequisites: Students should be well-versed in JSP page
authoring. Knowledge of JSP 2.0 is a
plus, but is not required; the module’s
primary audience is JSP 1.x authors.
1. JSTL
Overview
The JSP Standard Tag Library
The JSP Expression Language
EL Syntax
Type Coercion
Error Handling
Implicit Objects for EL
JSTL Namespaces
Using JSTL in a Page
The Core Actions
Going Scriptless
Object Instantiation
Sharing Objects
Decomposition
Parameterization
2. The
Core Actions
The JSTL Core Library
<c:out>
<c:set>
Gotchas
Conditional Processing
Iterative Processing
Iterating Over Maps
Tokenizing Strings
Catching Exceptions
Resource Access
3. The
Formatting and i18n Actions
The JSTL Formatting Library
Locales
Determining Locale
Time Zones
Setting Locale and Time Zone
Formatting and Parsing Dates
Formatting and Parsing Numbers
Internationalization
Working with Resource Bundles
Supporting Multiple Languages
4. The
SQL Actions
The JSTL SQL Library
Using Relational Data
Connecting with a DriverManager
Connecting via a DataSource
The Result Interface
Making a Query
Inserts, Updates and Deletes
Parameterized SQL
Transactions
5. The
XML Actions
The JSTL XML Library
Using XML
XML Data Sources
Parsing and Addressing
Using XPath in JSTL
XPath vs. EL
XPath Context
Implicit Objects for XPath
Conditional Processing
Iterative Processing
Changing XPath Context
Working with XML Namespaces
Using XSLT
Chaining Transformations
Reading XML from the Request Body
XML and SOAP Web Services
Appendix. Learning Resources
System Requirements
This module can be presented on Windows or Linux systems. Tools required are all free downloadables
available for either platform: the J2SE
SDK, the Tomcat 5 Web server, the MySQL RDBMS and a MySQL JDBC driver. Hardware requirements are modest: a good
minimal system for this module would have a Pentium 500MHz or equivalent CPU,
256 meg of RAM and at least 500 megabytes of free disk space for tools
installation and lab software.