Core Servlets and JavaServer Pages, Volume 2: Advanced Technologies, 2nd Edition
- By Marty Hall, Larry Brown, Yaakov Chaikin
- Published Dec 27, 2007 by Prentice Hall. Part of the Sun Core Series series.
- Copyright 2008
- Dimensions: 7x9-1/4
- Pages: 736
- Edition: 2nd
- ISBN-10: 0-13-148260-2
- ISBN-13: 978-0-13-148260-9
Register your product to gain access to bonus material or receive a coupon.
Product Author Bios
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.
Java EE is the technology of choice for e-commerce applications, interactive Web sites, and Web-enabled services. Servlet and JSP technology provides the link between Web clients and server-side applications on this platform. Core Servlets and JavaServer Pages, Volume 2: Advanced Technologies, Second Edition, is the definitive guide to the advanced features and capabilities provided by servlets and JSP.
Volume 2 presents advanced capabilities like custom tag libraries, filters, declarative security, JSTL, and Struts. Like the first volume, it teaches state-of-the-art techniques and best practices illustrated with complete, working, fully documented programs.
Volume 2 explains in detail the advanced tools and techniques needed to build robust, enterprise-class applications. You'll learn how to control application behavior through the web.xml deployment descriptor file, how to enhance application security through both declarative and programmatic methods, and how to use servlet and JSP filters to encapsulate common behavior. You'll also learn how to control major application lifecycle events, best practices for using JSTL, and how to build custom tag libraries. Volume 2 concludes with an in-depth introduction to the Jakarta Struts framework.
Volume 1 presents comprehensive coverage of the servlets and JSP specifications, including HTTP headers, cookies, session tracking, JSP scripting elements, file inclusion, the MVC architecture, and the JSP expression language. It also covers HTML forms, JDBC, and best practices for design and implementation.
9 of 9 people found the following review helpful
advanced servlet/jsp & struts 1.3,
This review is from: Core Servlets and Javaserver Pages: Advanced Technologies, Vol. 2 (2nd Edition) (Core Series) (Paperback)"Core Servlets and JavaServer Pages, Volume 2: Advanced Technologies" targets developers who already know Java and basic servlets/JSPs. Note this book's second edition does not cover the latest technologies. It uses J2EE 1.3/1.4 and Struts 1.3.
The main topics are advanced deployment descriptor settings, security, custom tags, filters, event handling and JSTL. Then there are three chapters on Struts 1.3. These additional chapters were very good although I'm not sure what they have to do with "core servlets." The browser screenshots were good for showing output and the examples were excellent.
As with "Core Java", the 700 page book contains some long classes. I could have done without the complete 5 page deployment descriptor at the end since it was gradually built up with new additions highlighted. The highlighting does help with spatial orientation.
I did notice a couple typos in the book. None of these affected the meaning, but it gives you... Read more
4 of 4 people found the following review helpful
Really good compendium,
This review is from: Core Servlets and Javaserver Pages: Advanced Technologies, Vol. 2 (2nd Edition) (Core Series) (Paperback)Courtesy of Robert Lange from Szczecin JUG:
Core Servlets and Java Server Pages Volume 2: Advanced Technologies is a sequel of Volume 1 : Core Technologies. Beside the authors many times emphasize that it will be better to know information covered in volume 1and that in this book there are mainly information about advanced technologies, they are recalling basic technologies too (configuration of deployment environment - Tomcat and other servers, deployment strategies, building WAR files, creating simple web applications, etc). It is very smart endeavors because it present great introduction to more advanced technologies. The only one demand for studying of both volumes of this book is that reader is familiar with java programming.
Very interesting division describes [...] file as a tool which controls web application. It contains step by step information how to build proper [...] file which could change and control behavior of already working web application... Read more
2 of 2 people found the following review helpful
This review is from: Core Servlets and Javaserver Pages: Advanced Technologies, Vol. 2 (2nd Edition) (Core Series) (Paperback)This book is a continuation of the first book. The book covers deployment of web application in great detail. It takes you through the development of a JSP, custom tags and does not leave you hanging like other books. It takes you through the steps of compiling, building and installing your web app. It covers security filtering and much more.
Another interesting technique this book uses, is it take the web developer through the different types of web development. It starts with development of custom tags and takes the reader through JSTL libraries and then discusses the Struts framework.
Finally, I used this book to help me through deployment of my web application. It was an invaluable tool.
› See all 7 customer reviews...
Online Sample Chapter
Table of Contents
- Who Should Read This Book viii
About the Web Site xx
ABOUT THE AUTHORS xxii
Chapter 1: USING AND DEPLOYING WEB APPLICATIONS 2
- 1.1 Purpose of Web Applications 3
1.2 Structure of Web Applications 5
1.3 Registering Web Applications with the Server 9
1.4 Development and Deployment Strategies 14
1.5 The Art of WAR: Bundling Web
1.6 Building a Simple Web Application 18
1.7 Sharing Data Among Web Applications 25
Chapter 2: CONTROLLING WEB APPLICATION BEHAVIOR WITH WEB.XML 34
- 2.1 Purpose of the Deployment Descriptor 35
2.2 Defining the Header and the Root Element 36
2.3 The Elements of web.xml 37
2.4 Assigning Names and Custom URLs 42
2.5 Disabling the Invoker Servlet 52
2.6 Initializing and Preloading Servlets and JSP Pages 56
2.7 Declaring Filters 68
2.8 Specifying Welcome Pages 71
2.9 Designating Pages to Handle Errors 72
2.10 Providing Security 78
2.11 Controlling Session Timeouts 83
2.12 Documenting Web Applications 84
2.13 Associating Files with MIME Types 85
2.14 Configuring JSP Pages 86
2.15 Configuring Character Encoding 93
2.16 Designating Application Event Listeners 93
2.17 Developing for the Clustered Environment 95
2.18 J2EE Elements 97
Chapter 3: DECLARATIVE SECURITY 104
- 3.1 Form-Based Authentication 106
3.2 Example: Form-Based Authentication 122
3.3 BASIC Authentication 143
3.4 Example: BASIC Authentication 147
3.5 Configuring Tomcat to Use SSL 156
3.6 WebClient: Talking to Web Servers Interactively 164
3.7 Signing a Server Certificate 167
Chapter 4: PROGRAMMATIC SECURITY 178
- 4.1 Combining Container-Managed and Programmatic Security 180
4.2 Example: Combining Container-Managed and Programmatic Security 183
4.3 Handling All Security Programmatically 188
4.4 Example: Handling All Security Programmatically 190
4.5 Using Programmatic Security with SSL 195
4.6 Example: Programmatic Security and SSL 197
Chapter 5: SERVLET AND JSP FILTERS 202
- 5.1 Creating Basic Filters 204
5.2 Example: A Reporting Filter 210
5.3 Accessing the Servlet Context from Filters 217
5.4 Example: A Logging Filter 218
5.5 Using Filter Initialization Parameters 221
5.6 Example: An Access Time Filter 223
5.7 Blocking the Response 226
5.8 Example: A Prohibited-Site Filter 227
5.9 Modifying the Response 234
5.10 Example: A Replacement Filter 237
5.11 Example: A Compression Filter 245
5.12 Configuring Filters to Work with RequestDispatcher 251
5.13 Example: Plugging a Potential Security Hole 253
5.14 The Complete Filter Deployment Descriptor 260
Chapter 6: THE APPLICATION EVENTS FRAMEWORK 266
- 6.1 Monitoring Creation and Destruction of the Servlet Context 270
6.2 Example: Initializing Commonly Used Data 271
6.3 Detecting Changes in Servlet Context Attributes 277
6.4 Example: Monitoring Changes to Commonly Used Data 278
6.5 Packaging Listeners with Tag Libraries 288
6.6 Example: Packaging the Company Name Listeners 290
6.7 Recognizing Session Creation and Destruction 297
6.8 Example: A Listener That Counts Sessions 298
6.9 Watching for Changes in Session Attributes 306
6.10 Example: Monitoring Yacht Orders 307
6.11 Identifying Servlet Request Initialization and Destruction 314
6.12 Example: Calculating Server Request Load 315
6.13 Watching Servlet Request for Attribute Changes 322
6.14 Example: Stopping Request Frequency Collection 323
6.15 Using Multiple Cooperating Listeners 325
6.16 The Complete Events Deployment Descriptor 339
Chapter 7: TAG LIBRARIES: THE BASICS 346
- 7.1 Tag Library Components 348
7.2 Example: Simple Prime Tag 353
7.3 Assigning Attributes to Tags 357
7.4 Example: Prime Tag with Variable Length 359
7.5 Including Tag Body in the Tag Output 362
7.6 Example: Heading Tag 364
7.7 Example: Debug Tag 368
7.8 Creating Tag Files 371
7.9 Example: Simple Prime Tag Using Tag Files 372
7.10 Example: Prime Tag with Variable Length Using Tag Files 374
7.11 Example: Heading Tag Using Tag Files 376
Chapter 8: TAG LIBRARIES: ADVANCED FEATURES 378
- 8.1 Manipulating Tag Body 380
8.2 Example: HTML-Filtering Tag 381
8.3 Assigning Dynamic Values to Tag Attributes 385
8.4 Example: Simple Looping Tag 387
8.5 Assigning Complex Objects as Values to Tag Attributes 391
8.6 Example: Table Formatting Tag 393
8.7 Creating Looping Tags 398
8.8 Example: ForEach Tag 399
8.9 Creating Expression Language Functions 404
8.10 Example: Improved Debug Tag 407
8.11 Handling Nested Custom Tags 410
8.12 Example: If-Then-Else Tag 412
Chapter 9: JSP STANDARD TAG LIBRARY (JSTL) 418
- 9.1 Installation of JSTL 420
9.2 c:out Tag 421
9.3 c:forEach and c:forTokens Tags 422
9.4 c:if Tag 424
9.5 c:choose Tag 425
9.6 c:set and c:remove Tags 427
9.7 c:import Tag 430
9.8 c:url and c:param Tags 433
9.9 c:redirect Tag 435
9.10 c:catch Tag 437
Chapter 10: THE STRUTS FRAMEWORK: BASICS 440
- 10.1 Understanding Struts 441
10.2 Setting Up Struts 446
10.3 The Struts Flow of Control and the Six Steps to Implementing It 450
10.4 Processing Requests with Action Objects 458
10.5 Handling Request Parameters with Form Beans 481
10.6 Prepopulating and Redisplaying Input Forms 504
Chapter 11: THE STRUTS FRAMEWORK: DOING MORE 538
- 11.1 Using Properties Files 539
11.2 Internationalizing Applications 554
11.3 Laying Out Pages with Tiles 558
11.4 Using Tiles Definitions 582
Chapter 12: THE STRUTS FRAMEWORK: VALIDATING USER INPUT 592
- 12.1 Validating in the Action Class 594
12.2 Validating in the Form Bean 607
12.3 Using the Automatic Validation Framework 624
APPENDIX: DEVELOPING APPLICATIONS WITH APACHE ANT 644
- A.1 Summarizing the Benefits of Ant 646
A.2 Installing and Setting Up Ant 646
A.3 Creating an Ant Project 648
A.4 Reviewing Common Ant Tasks 652
A.5 Example: Writing a Simple Ant Project 661
A.6 Using Ant to Build a Web Application 668
A.7 Example: Building a Web Application 670
A.8 Using Ant to Create a WAR File 675
A.9 Example: Creating a Web Application WAR File 679
Downloadable Sample Chapter
Book + eBook Bundle
Book Price $43.99
eBook Price $15.40
eBook formats included
This book includes free shipping!
This book includes free shipping!
Includes EPUB, MOBI, and PDF
About eBook Formats
This eBook includes the following formats, accessible from your Account page after purchase:
EPUBThe open industry format known for its reflowable content and usability on supported mobile devices.
MOBIThe eBook format compatible with the Amazon Kindle and Amazon Kindle applications.
PDFThe popular standard, used most often with the free Adobe® Reader® software.
This eBook requires no passwords or activation to read. We customize your eBook by discretely watermarking it with your name, making it uniquely yours.
Get access to thousands of books and training videos about technology, professional development and digital media from more than 40 leading publishers, including Addison-Wesley, Prentice Hall, Cisco Press, IBM Press, O'Reilly Media, Wrox, Apress, and many more. If you continue your subscription after your 30-day trial, you can receive 30% off a monthly subscription to the Safari Library for up to 12 months. That's a total savings of $199.