Marty Hall is the president of coreservlets.com, a leading provider of Java training and consulting services. Marty has given courses on Java technologies in seven countries and dozens of U.S. venues, and directs the Java and Web-related concentration areas in the part-time Computer Science graduate program at the Johns Hopkins University. His books include all editions of Core Servlets and JavaServer Pages, More Servlets and JavaServer Pages, and Core Web Programming.
Larry Brown is an IT manager at a U.S. Navy Research and Development Laboratory, and coauthor of Core Web Programming, Second Edition (Prentice Hall, 2001).
Yaakov Chaikin, senior consultant at a software development company based in Columbia, MD, heads the Web Development track at Loyola College's graduate computer science program.
Introduction | p. xvii |
Who Should Read This Book | p. viii |
Conventions | p. xix |
About the Web Site | p. xx |
Acknowledgments | p. xxi |
p. xxii | |
Using and Deploying Web Applications | p. 21 |
Purpose of Web Applications | p. 3 |
Structure of Web Applications | p. 5 |
Registering Web Applications with the Server | p. 9 |
Development and Deployment Strategies | p. 14 |
The Art of War: Bundling Web | |
Building a Simple Web Application | p. 18 |
Sharing Data Among Web Applications | p. 25 |
Controlling Web Application Behavior with Web.XML | p. 34 |
Purpose of the Deployment Descriptor | p. 35 |
Defining the Header and the Root Element | p. 36 |
The Elements of web.xml | p. 37 |
Assigning Names and Custom URLs | p. 42 |
Disabling the Invoker Servlet | p. 52 |
Initializing and Preloading Servlets and JSP Pages | p. 56 |
Declaring Filters | p. 68 |
Specifying Welcome Pages | p. 71 |
Designating Pages to Handle Errors | p. 72 |
Providing Security | p. 78 |
Controlling Session Timeouts | p. 83 |
Documenting Web Applications | p. 84 |
Associating Files with MIME Types | p. 85 |
Configuring JSP Pages | p. 86 |
Configuring Character Encoding | p. 93 |
Designating Application Event Listeners | p. 93 |
Developing for the Clustered Environment | p. 95 |
J2EE Elements | p. 97 |
Declarative Security | p. 104 |
Form-Based Authentication | p. 106 |
Example: Form-Based Authentication | p. 122 |
Basic Authentication | p. 143 |
Example: Basic Authentication | p. 147 |
Configuring Tomcat to Use SSL | p. 156 |
WebClient: Talking to Web Servers Interactively | p. 164 |
Signing a Server Certificate | p. 167 |
Programmatic Security | p. 178 |
Combining Container-Managed and Programmatic Security | p. 180 |
Example: Combining Container-Managed and Programmatic Security | p. 183 |
Handling All Security Programmatically | p. 188 |
Example: Handling All Security Programmatically | p. 190 |
Using Programmatic Security with SSL | p. 195 |
Example: Programmatic Security and SSL | p. 197 |
Servlet and JSP Filters | p. 202 |
Creating Basic Filters | p. 204 |
Example: A Reporting Filter | p. 210 |
Accessing the Servlet Context from Filters | p. 217 |
Example: A Logging Filter | p. 218 |
Using Filter Initialization Parameters | p. 221 |
Example: An Access Time Filter | p. 223 |
Blocking the Response | p. 226 |
Example: A Prohibited-Site Filter | p. 227 |
Modifying the Response | p. 234 |
Example: A Replacement Filter | p. 237 |
Example: A Compression Filter | p. 245 |
Configuring Filters to Work with RequestDispatcher | p. 251 |
Example: Plugging a Potential Security Hole | p. 253 |
The Complete Filter Deployment Descriptor | p. 260 |
The Application Events Framework | p. 266 |
Monitoring Creation and Destruction of the Servlet Context | p. 270 |
Example: Initializing Commonly Used Data | p. 271 |
Detecting Changes in Servlet Context Attributes | p. 277 |
Example: Monitoring Changes to Commonly Used Data | p. 278 |
Packaging Listeners with Tag Libraries | p. 288 |
Example: Packaging the Company Name Listeners | p. 290 |
Recognizing Session Creation and Destruction | p. 297 |
Example: A Listener That Counts Sessions | p. 298 |
Watching for Changes in Session Attributes | p. 306 |
Example: Monitoring Yacht Orders | p. 307 |
Identifying Servlet Request Initialization and Destruction | p. 314 |
Example: Calculating Server Request Load | p. 315 |
Watching Servlet Request for Attribute Changes | p. 322 |
Example: Stopping Request Frequency Collection | p. 323 |
Using Multiple Cooperating Listeners | p. 325 |
The Complete Events Deployment Descriptor | p. 339 |
Tag Libraries: The Basics | p. 346 |
Tag Library Components | p. 348 |
Example: Simple Prime Tag | p. 353 |
Assigning Attributes to Tags | p. 357 |
Example: Prime Tag with Variable Length | p. 359 |
Including Tag Body in the Tag Output | p. 362 |
Example: Heading Tag | p. 364 |
Example: Debug Tag | p. 368 |
Creating Tag Files | p. 371 |
Example: Simple Prime Tag Using Tag | |
Table of Contents provided by Publisher. All Rights Reserved. |
The New copy of this book will include any supplemental materials advertised. Please check the title of the book to determine if it should include any access cards, study guides, lab manuals, CDs, etc.
The Used, Rental and eBook copies of this book are not guaranteed to include any supplemental materials. Typically, only the book itself is included. This is true even if the title states it includes any access cards, study guides, lab manuals, CDs, etc.