This four-day course develops skills in JavaServer Pages, or JSP™,
which is the standard means of authoring dynamic content for Web
applications under the Java Enterprise platform. It treats JSP 2.0,
including older features such as scriptlets but focusing on newer
features and techniques, including JSP expressions and the JSTL. At
the end of the course, students will be well prepared to author JSPs
for small- or large-scale Web applications, either by hand (they use
only a text editor in class) or using an authoring tool.
The first module begins with an introduction of Web applications in
general, shows how Java servlets and JSPs establish a framework for
writing Web applications, and then covers JSP 2.0 features in detail,
from scripting elements to use of dedicated JavaBeans to JSP
expressions, and quick introductions of JSTL and custom tag
development.
By the end of the module students will be able to create their own JSP
applications, including interactive applications using HTML forms and
pages that perform fairly complex processing using scripts and or
actions. Although scripting is covered, the scriptless authoring
style encouraged by the JSP 2.0 specification is emphasized, and
students will be well equipped to develop concise and effective JSP
applications.
The second module covers 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.
Prerequisites: No formal prerequisites; knowledge of HTML and
background in Web applications, and/or Java programming experience,
are helpful but not necessary.
On completion of this course, the student should be able to
Explain the fundamentals of HTML and HTTP in the World Wide
Web.
Describe JavaServer Pages and their relationship to servlets
and J2EE generally.
Describe how a JSP is translated into a servlet and
processed at runtime.
Explain the use of directives on JSPs and outline the
principal directives.
Implement simple JSPs that use Java code in declarations,
expressions and scriptlets.
Enumerate and use the implicit objects available to
scripting elements.
Implement an interactive Web application using HTML forms
and JSP.
Use Java exception handling and JSP error pages to handle
errors in JSP applications.
Implement session management for a JSP application.
Manage cookies to store client-specific information at
various scopes and durations.
Use JavaBeans to implement effective interactive JSP
applications.
Describe custom tags in JSP and explain how they are
implemented, both using Java and JSP itself, and how they are used.
Discuss threading issues in JSP and describe the use of
directives to control how threading is handled.
Describe the various uses of XML in JSP applications.
Deploy a logical Web application to a Web server in a WAR
file.
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.
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.
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.
Instructor-led course, with practical computer-based exercises.
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.