JSP Samples

This is a collection of samples demonstrating the usage of different parts of the Java Server Pages (JSP) specification. Both JSP 2.0 and JSP 1.2 examples are presented below.

These examples will only work when these pages are being served by a servlet engine; of course, we recommend Tomcat. They will not work if you are viewing these pages via a "file://..." URL.

To navigate your way through the examples, the following icons will help:

| Execute the example
| Look at the source code for the example
| Return to this screen

Tip: For session scoped beans to work, the cookies must be enabled. This can be done using browser options.
JSP 2.0 Examples

Expression Language
Basic Arithmetic | Execute | Source
Basic Comparisons | Execute | Source
Implicit Objects | Execute | Source
Functions | Execute | Source
Composite Expressions | Execute | Source
SimpleTag Handlers and JSP Fragments
Hello World Tag | Execute | Source
Repeat Tag | Execute | Source
Book Example | Execute | Source
Tag Files
Hello World Tag File | Execute | Source
Panel Tag File | Execute | Source
Display Products Example | Execute | Source
New JSP XML Syntax (.jspx)
XHTML Basic Example | Execute | Source
SVG (Scalable Vector Graphics) | Execute | Source
Other JSP 2.0 Features
<jsp:attribute> and <jsp:body> | Execute | Source
Shuffle Example | Execute | Source
Attributes With Dynamic Names | Execute | Source
JSP Configuration | Execute | Source

JSP 1.2 Examples

Numberguess | Execute | Source
Date | Execute | Source
Snoop | Execute | Source
ErrorPage | Execute | Source
Carts | Execute | Source
Checkbox | Execute | Source
Color | Execute | Source
Calendar | Execute | Source
Include | Execute | Source
Forward | Execute | Source
Plugin | Execute | Source
JSP-Servlet-JSP | Execute | Source
Custom tag example | Execute | Source
XML syntax example | Execute | Source

Tag Plugins

If | Execute | Source
ForEach | Execute | Source
Choose | Execute | Source

Other Examples

FORM Authentication | Execute |
Example that demonstrates protecting a resource and using Form-Based authentication. To access the page the user must have role of either "tomcat" or "role1". By default no user is configured to have these roles.
Servlet 3.0 Asynchronous processing examples Examples that demonstrate using Servlet 3.0 asynchronous request processing API.
async0 | Execute |
async1 | Execute |
async2 | Execute |
async3 | Execute |
stockticker | Execute |
Comet processing example Example that demonstrates asynchronous request processing using Comet API. See "Advanced IO" chapter in the User Guide for details. It works only with connectors that support Comet processing (APR or NIO HTTP connectors).
Comet Chat | Execute |