"I truly enjoyed the grammar class" More Testimonials »

Developing Java Web Applications

Delivery Options

Class Date and Time Price Pricing Information
$2,125.00
or 5 vouchers vouchers
$2,125.00 or 5 vouchers vouchers
$2,125.00 or 5 vouchers vouchers

Class Description

Class Overview

Gives the experienced Java programmer a firm understanding of web application development in the Java Enterprise environment. Students learn the Servlets, JSP, and JSTL standards and how to mesh them into an effective methodology for building maintainable model/view/controller web applications. Students also work with relational databases and are exposed to practicalities of using both JDBC- and JPA-based persistence tiers. The course also introduces security concepts and provides exercises in both declarative and programmatic approaches to authentication and authorization for Java web applications.

Class Goals

  • Understand the value of web applications to an IT enterprise, and the importance of the Java EE platform in enabling web development.
  • Build servlets to respond to HTTP requests.
  • Build JavaServer Pages to define HTTP responses.
  • Combine servlets and JSPs in a model/view/controller architecture to maximize efficiency and maintainability of application code.
  • Define HTML forms and process form input.
  • Store and retrieve information at request, session, and application scope.
  • Make effective use of HTTP sessions as managed by the Java EE web container.
  • Use the JSP Standard Tag Library to implement appropriate presentation logic in a JSP.
  • Take full advantage of the relationship of servlets and JSPs to the Java EE web container using configuration, context, and lifecycle techniques.
  • Manage persistent data from web applications by working with persistence tiers, JDBC, and/or JPA.
  • Implement and configure servlet filters.
  • Declare security policies for web applications, and use programmatic authorization where appropriate.

Class Outline

  1. Overview of Java EE Web Applications
    1. The World Wide Web
    2. HTTP
    3. HTML and XML
    4. CSS
    5. Dynamic Web Applications
    6. The Java EE Platform
    7. Java EE Servers and Portability
    8. Servlets
    9. JavaServer Pages
    10. JSTL
    11. Web Archives and Enterprise Archives
    12. Model/View/Controller
    13. Forms
    14. Sessions
    15. Context and Lifecycle
    16. Databases
    17. Security
    18. Filters
    19. JavaServer Faces
  2. Servlets
    1. The HTTP Message Model
    2. The Servlets API "Kernel"
    3. HttpServlet
    4. Request and Response Objects
    5. Mapping URLs
    6. Attributes and Scopes
    7. Forwarding and Redirecting
  3. JavaServer Pages
    1. Dynamic Web Pages
    2. Relationship to Servlets
    3. Directives
    4. The Unified Expression Language
    5. Page Scope
    6. Implicit Objects
    7. <jsp:useBean> and "Model 1"
    8. MVC and "Model 2"
    9. JSP Documents
  4. Working with Forms
    1. HTML Forms
    2. Submit Method: GET vs. POST
    3. Reading Single-Value Components
    4. Reading Multi-Value Components
    5. Reading Button Input
    6. Input Validation
  5. Sessions
    1. Sessions over HTTP
    2. HttpSession
    3. Session Scope
    4. Session Pitfalls
  6. The JSP Standard Tag Library
    1. Custom Tags
    2. The JSTL Libraries
    3. The Core Library
    4. Iterating Over Collections
    5. The Formatting Library
    6. Formatting Dates and Numbers
    7. Working with Maps
    8. Conditionals
    9. Loops
    10. Variables
    11. Importing Documents
  7. Custom Tags
    1. Custom Tag Libraries
    2. Tag Library Architecture
    3. Implementing in Java or JSP
    4. Correct Use of Scopes
    5. Invoking Presentation Logic
    6. Reusing Presentation Fragments
    7. Classic Tag Handlers
    8. Simple Tag Handlers
    9. Tag Files
  8. Context and Lifecycle
    1. Containers and Components
    2. Context and Lifecycle Interfaces
    3. Initialization and Context Parameters
    4. Loading Resources
    5. Lifecycle Methods
    6. Lifecycle Annotations
    7. Context Listeners
    8. JNDI and the Component Environment
    9. Dependency Injection
  9. Working with Databases
    1. Persistence Challenges
    2. Persistence Strategies
    3. JDBC
    4. DriverManager
    5. DataSource
    6. Data Access Objects
    7. JNDI Quirks and Portability Issues
    8. JPA
    9. Entity Annotations
    10. Entity Managers
    11. Persistence Units
    12. Working with Persistent Data
    13. Processing Tables
    14. Limiting Query Scope
  10. Filters
    1. Servlet Filters
    2. Uses for Filters
    3. Implementation
    4. Deployment
    5. Configuration and Context
  11. Security
    1. Threats to Enterprise IT
    2. Web Applications as Prime Targets
    3. Container Services
    4. Authentication for Web Applications
    5. Authorization
    6. HTTP BASIC Authentication
    7. HTTP DIGEST Authentication
    8. Declaring Security Constraints
    9. Abstract Roles, Concrete Realms
    10. Configuring User Realms
    11. Custom Error Pages
    12. Frustrations with BASIC and DIGEST
    13. Doing It Yourself
    14. FORM Authentication
    15. Programmatic Security
    16. Beyond Container-Based Security
    17. OWASP and the Top 10

Class Materials

Each student in our Live Online and our Onsite classes receives a comprehensive set of materials, including course notes and all the class examples.

Class Prerequisites

Experience in the following areas is required:

  • Java programming experience is required;
  • Exposure to HTML and web page design are beneficial but not necessary.

Courses that can help you meet these prerequisites:

Technical Requirements

Our computer technical requirements and setup process is easy, with support just a click away.

Potential Follow-on Classes


  • Java ®, all Java-based marks, Hibernate ®, and all Hibernate-based marks are trademarks or registered trademarks of Sun Microsystems, Inc. or its subsidiaries in the U.S. and other countries.
Client Success
  1. Independent Survey
  2. Client List
  3. Testimonials
Join The Team
  1. Learn how you can become a Webucator Trainer
  2. Career Opportunities
Locations
Compare Us
Watch 3-minute Demo Video
of Live Online Training:
Learn the benefits of online training with Webucator
Webucator is a Registered Education Provider (R.E.P.) approved by PMI to issue professional development units (PDUs) for our training courses.
© Webucator, Inc. All rights reserved. | Toll Free: 1-877-932-8228 | From outside the USA: 315-849-2724| Fax: 315-849-2723