O'Reilly logo

Java Servlet & JSP Cookbook by Bruce W. Perry

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Chapter 5. Altering the Format of JSPs

Introduction

This chapter covers two means of working with JSPs that fall slightly outside the norm. The first method precompiles JSPs and turns them into servlet source code. The second develops JSPs as XML documents.

Precompiling JSPs

Precompiling a JSP involves using a server-provided command-line tool to convert the JSP page into a servlet class file. A JSP is converted into a servlet, often called a JavaServer Page implementation class , before it handles any HTTP requests. The JSP specification refers to the stage by which the JSP container converts JSP page syntax into a servlet as the translation phase . In Tomcat, if you want to examine what the JSP page implementation class looks like after this conversion, go to this directory:

Tomcat-install-directory/work/Standalone/name-of-host/name-of-web-app

name-of-host could be localhost, or any other hostname that refers to the server Tomcat is installed on. The name of the web application is also the name of the context; this is usually something like examples, ROOT, or storefront.

The indicated directory contains .java files, such as default_jsp.java. These are the Java source files that are compiled into class files, and then executed as servlets to respond to requests.

The reasons why a JSP developer may want to precompile a JSP page include:

  1. Avoiding the perceptible delay caused when a JSP is first requested from the web container, during which the JSP compiler converts the JSP's source ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required