Front cover image for Java for the Web with Servlets, JSP, and EJB

Java for the Web with Servlets, JSP, and EJB

Covers all the technologies needed to program web applications in Java using Servlets 2.3, JSP 1.2, EJB 2.0 and client-side programming with JavaScript. This book explains the technologies in the context of real-world projects, such as an e-commerce application, a document management program, and file upload and programmable file download.
Print Book, English, ©2002
New Riders Pub., Indianapolis, Ind., ©2002
xxxi, 953 pages : illustrations ; 23 cm + 1 CD-ROM (4 3/4 in.)
9780735711952, 073571195X
50088706
The Servlet Technology. The Benefits of Servlets. Servlet Application Architecture. How a Servlet Works. The Tomcat Servlet Container. Six Steps to Running Your First Servlet. Summary.Inside Servlets. The javax.servlet Package. A Servlet's Life Cycle. Obtaining Configuration Information. Preserving the ServletConfig. The Servlet Context. Sharing Information Among Servlets. Requests and Responses. The GenericServlet Wrapper Class. Creating Thread-Safe Servlets. Summary.Writing Servlet Applications. The HttpServlet Class. The HttpServletRequest Interface. HttpServletResponse. Sending an Error Code. Sending Special Characters. Buffering the Response. Populating HTML Elements. Request Dispatching. Summary.Accessing Databases with JDBC. The java.sql Package. Four Steps to Getting to the Database. A Database-Based Login Servlet. The Single Quote Factor. Inserting Data into a Table with RegistrationServlet. Displaying All Records. Search Page. An Online SQL Tool. Should I Keep the Connection Open? Transactions. Connection Pooling. Summary.Session Management. What Is Session Management? URL Rewriting. Hidden Fields. Cookies. Session Objects. Knowing Which Technique to Use. Summary.Application and Session Events. Listening to Application Events. Listening to HttpSession Events. Summary.Servlet Filtering. An Overview of the API. A Basic Filter. Mapping a Filter with a URL. A Logging Filter. Filter Configuration. A Filter that Checks User Input. Filtering the Response. Filter Chain. Summary.JSP Basics. What's Wrong with Servlets? Running Your First JSP. How JSP Works. The JSP Servlet Generated Code. The JSP API. The Generated Servlet Revisited. Implicit Objects. Summary.JSP Syntax. Directives. Scripting Elements. Standard Action Elements. Comments. Converting into XML Syntax. Summary.Developing JSP Beans. Calling Your Bean from a JSP Page. A Brief Theory of JavaBeans. Making a Bean Available. Accessing Properties Using jsp:getProperty and jsp:setProperty. Setting a Property Value from a Request. JavaBeans Code Initialization. The SQLToolBean Example. Summary.Using JSP Custom Tags. Writing Your First Custom Tag. The Role of the Deployment Descriptor. The Tag Library Descriptor. The Custom Tag Syntax. The JSP Custom Tag API. The Life Cycle of a Tag Handler. Summary.Programmable File Download. Keys to Programmable File Download. Using the Brainysoftware.com File Download Bean. Summary.File Upload. The HTTP Request. Client-Side HTML. HTTP Request of an Uploaded File. Uploading a File. FileUpload Bean. Multiple File Upload. Summary.Security Configuration. Imposing Security Constraints. Allowing Multiple Roles. Form-Based Authentication. Digest Authentication. Methods Related to Security. Restricting Certain Methods. Summary.Caching. Caching Data into a Text File. Caching in Memory. Summary.Application Deployment. Application Directory Structure. Deployment Descriptor. Servlet Alias and Mapping. JSP Alias and Mapping. Packaging and Deploying a Web Application. Summary.Architecting Java Web Applications. Model 1 Architecture. Model 2 Architecture. Summary.Developing E-Commerce Applications. Project Specification. The Database Structure. Page Design. Preparation. Application Design. Building the Project. Summary.XML-Based E-Books. The Table of Contents. Translating XML into the Object Tree. The Project. Pre-Render the Table of Contents. Summary.Web-Based Document Management. The Docman Project. Summary.JavaScript Basics. Introduction to JavaScript. Adding JavaScript Code to HTML. JavaScript Object Model. Event Handler. Window and String Objects. Summary.Client-Side Programming Basics. Checking Whether JavaScript Is Enabled. Handling JavaScript-Unaware Browsers. Handling Different Versions of JavaScript. Including a JavaScript File. Checking the Operating System. Checking the Browser Generation. Checking the Browser Type. Checking the Browser Language. Handling Dynamic Variable-Names. Summary.Redirection. Anticipating Failed Redirection. Using the Refresh Meta Tag. Using the location Object. Going Back to the Previous Page. Moving Forward. Navigation with a SELECT Element. Summary.Client-Side Input Validation. The isEmpty Function. The trim Function. The trimAll Function. The isPositiveInteger Function. The isValidPhoneNumber Function. The isMoney Function. The isUSDate and isOZDate Functions. Converting Date Formats. Data Type Conversion: String to Numeric. Data Type Conversion: Numeric to String. Using the Validation Functions. Summary.Working with Client-Side Cookies. Creating Cookies with a Tag. Creating Cookies with document.cookie. Creating Cookies with the setCookie Function. Reading Cookies on the Browser. Deleting a Cookie on the Browser. Checking If the Browser Can Accept Cookies Using JavaScript. Checking If the Browser Accepts Cookies Without JavaScript. Summary.Working with Object Trees. The Array Object. Truly Deleting an Array Element. Creating an Object. A Hierarchy of Objects. Summary.Controlling Applets. Is Java Enabled? Is the Applet Ready? Resizing an Applet. Calling an Applet's Method. Getting an Applet's Property. Setting an Applet Property. Using Java Classes Directly. Applet-to-JavaScript Communication. Accessing the Document Object Model from an Applet. Invoking JavaScript Functions from an Applet. Evaluating a JavaScript Statement from an Applet. Setting the Applet Parameter. Applet-to-Applet Communication Through JavaScript. Direct Applet-to-Applet Communication. Summary.Enterprise JavaBeans. What Is an Enterprise JavaBean? Benefits of EJB. EJB Application Architecture. The Six EJB Roles. Types of Enterprise Beans. Writing Your First Enterprise Bean. EJB Explained. Writing Client Applications. Creating a Bean's Instance. Summary.The Session Bean. What Is a Session Bean? Stateful and Stateless Session Beans. Writing a Session Bean. The Tassie Online Bookstore Example. Summary.Entity Beans. What Is an Entity Bean? The Remote Interface. The Home Interface. The Primary Key Class. The Entity Bean. Two Types of Entity Beans. Writing a BMP Entity Bean. Writing a CMP Entity Bean. Summary.EJB Query Language. EJB QL Syntax. EJB QL BNF. Summary.Java Message Service. Introduction to Messaging. The JMS API. The JMS API Messaging Domains. The JMS Object Model. Writing JMS Clients. Summary.Message-Driven Beans. What Is a Message-Driven Bean? The Application Programming Interface. Writing a Message-Driven Bean. Summary.Tomcat Installation and Configuration. Tomcat Installation. Tomcat Directories. Changing the Port. Constructing a JSP Application.The javax.servlet Package Reference. Interfaces. Classes. Exceptions.The javax.servlet.http Package Reference. Interfaces. Classes.The javax.servlet.jsp Package Reference. Interfaces. Classes.The javax.servlet.jsp.tagext Package Reference. Interfaces. Classes.JBoss Installation and Configuration. System Requirements. Installing JBoss. Directory Structure. Configuration. Running JBoss. Deployment. JBoss and Tomcat. Summary.Related Resources. J2EE. Servlet. JSP. Tag Library. Servlet/JSP Containers. JDBC. JNDI. JMS. EJB. J2EE Server.What's On the CD-ROM? Read This Before Opening the Software. GNU LESSER GENERAL PUBLIC LICENSE. GNU LESSER GENERAL PUBLIC LICENSE. NO WARRANTY.