-
JSP Application Basics
-
Chapter 1 Introducing JavaServer Pages
- What Is JavaServer Pages?
- Why Use JSP?
- What You Need to Get Started
-
Chapter 2 HTTP and Servlet Basics
- The HTTP Request/Response Model
- Servlets
-
Chapter 3 JSP Overview
- The Problem with Servlets
- The Anatomy of a JSP Page
- JSP Processing
- JSP Application Design with MVC
-
Chapter 4 Setting Up the JSP Environment
- Installing the Java Software Development Kit
- Installing the Tomcat Server
- Testing Tomcat
- Installing the Book Examples
- Example Web Application Overview
-
-
JSP Application Development
-
Chapter 5 Generating Dynamic Content
- Creating a JSP Page
- Installing a JSP Page
- Running a JSP Page
- Using JSP Directive Elements
- Using Template Text
- Using JSP Action Elements
-
Chapter 6 Using JavaBeans Components in JSP Pages
- What Is a Bean?
- Declaring a Bean in a JSP Page
- Reading Bean Properties
- Setting Bean Properties
-
Chapter 7 Using Custom Tag Libraries and the JSP Standard Tag Library
- What Is a Custom Tag Library?
- Installing a Custom Tag Library
- Declaring a Custom Tag Library
- Using Actions from a Tag Library
-
Chapter 8 Processing Input and Output
- Reading Request Parameter Values
- Validating User Input
- Formatting HTML Output
-
Chapter 9 Error Handling and Debugging
- Dealing with Syntax Errors
- Debugging a JSP Application
- Dealing with Runtime Errors
-
Chapter 10 Sharing Data Between JSP Pages, Requests, and Users
- Passing Control and Data Between Pages
- Sharing Session and Application Data
- Online Shopping
- Memory Usage Considerations
-
Chapter 11 Developing Custom Tag Libraries as Tag Files
- Creating and Using a Tag File
- Accessing Attribute Values
- Processing the Action Body
- Processing Fragment Attributes
- Exposing Data to the Calling Page Through Variables
- Aborting the Page Processing
- Packaging Tag Files for Easy Reuse
-
Chapter 12 Accessing a Database
- Accessing a Database from a JSP Page
- Validating Complex Input Without a Bean
- Using Transactions
- Application-Specific Database Actions
-
Chapter 13 Authentication and Personalization
- Container-Provided Authentication
- Application-Controlled Authentication
- Other Security Concerns
-
Chapter 14 Internationalization
- How Java Supports Internationalization and Localization
- Generating Localized Output
- A Brief History of Bits
- Handling Localized Input
-
Chapter 15 Working with XML Data
- Generating an XML Response
- Transforming XML into HTML
- Transforming XML into a Device-Dependent Format
- Processing XML Data
-
Chapter 16 Using Scripting Elements
- Using page Directive Scripting Attributes
- Implicit JSP Scripting Objects
- Using Scriptlets
- Using Expressions
- Using Declarations
- Mixing Action Elements and Scripting Elements
- Dealing with Scripting Syntax Errors
-
Chapter 17 Bits and Pieces
- Buffering
- Including Page Segments
- Global Configuration Options
- Mixing Client-Side and Server-Side Code
- Precompiling JSP Pages
- Preventing Caching of JSP Pages
- Writing JSP Pages as XML Documents
- How URIs Are Interpreted
-
-
JSP in J2EE and JSP Component Development
-
Chapter 18 Web Application Models
- The Java 2 Enterprise Edition Model
- The MVC Design Model
- Scalability
-
Chapter 19 Combining JSP and Servlets
- Servlets, Filters, and Listeners
- Picking the Right Component Type for Each Task
- Initializing Shared Resources Using a Listener
- Access Control Using a Filter
- Centralized Request Processing Using a Servlet
- Using a Common JSP Error Page
-
Chapter 20 Developing JavaBeans Components for JSP
- Beans as JSP Components
- JSP Bean Examples
- Unexpected <jsp:setProperty> Behavior
-
Chapter 21 Developing Custom Tag Libraries Using Java
- Developing Simple Tag Handlers
- Developing Classic Tag Handlers
- Developing Tag Library Functions
- Creating the Tag Library Descriptor
- Packaging and Installing a Tag Library
-
Chapter 22 Advanced Custom Tag Library Features
- Developing Cooperating Actions
- Validating Syntax
- Using a Listener in a Tag Library
- Dynamic Attribute Values and Types
-
Chapter 23 Integrating Custom Code with JSTL
- Setting and Using Configuration Variables
- Integrating Custom Conditional Actions
- Integrating Custom Iteration Actions
- Integrating Custom I18N Actions
- Integrating Custom Database Actions
- Using JSTL Tag Library Validators
-
Chapter 24 Database Access Strategies
- JDBC Basics
- Using Connections and Connection Pools
- Making a Connection Pool Available to Application Components
- Using a Generic Database Bean
- Developing Application-Specific Database Components
-
-
Appendixes
-
Appendix A JSP Elements Reference
- Directive Elements
- Scripting Elements
- Action Elements
- Custom actions
- Comments
- Escape Characters
-
Appendix B JSTL Actions and API Reference
- JSTL Library URIs and Default Prefixes
- Core Library Actions
- Internationalization and Formatting Actions
- Database Access Actions
- XML Processing Actions
- EL Functions
- Support and Utility Types
- Configuration Settings
-
Appendix C JSP Expression Language Reference
- Syntax
- Variables
- Data Types
- Expressions and Operators
-
Appendix D JSP API Reference
- Implicit Variables
- Other Servlet Types Accessible Through Implicit Variables
- Tag Handler Types
- Translation Time Types
- Other JSP Types
- Expression Language Types
-
Appendix E Book Example Custom Actions and API Reference
- Generic Custom Actions
- Generic Utility Classes
-
Appendix F Web Application Structure and Deployment Descriptor Reference
- Web Application File Structure
- Web Application Deployment Descriptor
- Creating a WAR File
-
-
Colophon
- Title:
- JavaServer Pages, Third Edition
- By:
- Hans Bergsten
- Publisher:
- O'Reilly Media
- Formats:
-
- Ebook
- Safari Books Online
- Print Release:
- December 2003
- Ebook Release:
- June 2009
- Pages:
- 768
- Print ISBN:
- 978-0-596-00563-4
- | ISBN 10:
- 0-596-00563-6
- Ebook ISBN:
- 978-0-596-10421-4
- | ISBN 10:
- 0-596-10421-9
Our look is the result of reader comments, our own experimentation, and feedback from distribution channels. Distinctive covers complement our distinctive approach to technical topics, breathing personality and life into potentially dry subjects. The animal on the cover of JavaServer Pages, Third Edition, is a grey wolf (Canis lupus), also known as a timberwolf. Once common all over North America, grey wolves wander the open tundra and forests of Alaska, Canada, and parts of the United States--just half their former range. These social animals mate for life and live in packs of two to fifteen animals; the strongest male is the leader of the group. Only the dominant pair in a pack breeds, the female giving birth to an average of seven pups sometime in April, May, or June, and all members of the group care for the young. Sarah Sherman was the production editor and copyeditor, and Marlowe Shaeffer was the proofreader for JavaServer Pages, Third Edition. Mary Anne Weeks Mayo and Claire Cloutier provided quality control. John Bickelhaupt wrote the index.
Pam Spremulli designed the cover of this book, based on a series design by Edie Freedman. The cover image is an original engraving from the Dover Pictorial Archive. Emma Colby produced the cover layout with QuarkXPress 4.1 using Adobe's ITC Garamond font.
David Futato designed the interior layout. This book was converted by Julie Hawks to FrameMaker 5.5.6 with a format conversion tool created by Erik Ray, Jason McIntosh, Neil Walls, and Mike Sierra that uses Perl and XML technologies. The text font is Linotype Birka; the heading font is Adobe Myriad Condensed; and the code font is LucasFont's TheSans Mono Condensed. The illustrations that appear in the book were produced by Robert Romano and Jessamyn Read using Macromedia FreeHand 9 and Adobe Photoshop 6. The tip and warning icons were drawn by Christopher Bing. This colophon was written by Leanne Soylemez.
