09/19/2022 - 09/23/2022
10:00 AM - 06:00 PM
Online Virtual Class
USD $1,995.00
Enroll
10/24/2022 - 10/28/2022
10:00 AM - 06:00 PM
Online Virtual Class
USD $1,995.00
Enroll
12/12/2022 - 12/16/2022
10:00 AM - 06:00 PM
Online Virtual Class
USD $1,995.00
Enroll

Objectives

This class combines lecture with hands-on experience, and open ended discussion that will help the developer quickly understand all advantages of Struts 2 applications and create Struts 2 applications Eclipse and JBoss/ TomCat.

Prerequisites

3 year Java programming experience with Servlets, JSP, Custom tags, JSTL, or after taking WA1278.

Duration

5 Days

Outline for Java for Web Development using Struts 2 Training

Module 1: Introduction to Struts 2 Framework

  • Introduction
  • What is a Framework?
  • Struts 2 Overview
  • Struts 2 Implementation of MVC
  • Processing Request
  • Model – Action
  • View – Result
  • Interceptors
  • Exception Handling
  • The ValueStack and ONGL
  • Advantages of Struts 2
  • Struts 2 vs. Struts 1

Module 2: Struts 2 Architecture

  • Two Ways of Declaring Architecture
  • Declarative Architecture
  • XML Based Declarative Architecture
  • The struts.xml file
  • The struts.xml file – include tag
  • The struts.xml file – package tag
  • Actions
  • Actions –Single Result
  • Actions –Multiple Results
  • Request and Form Data
  • Accessing Business Services
  • Accessing Data from the Action
  • Value Stack
  • Example
  • Exercise

Module 3: Struts Configuration File

  • Overview
  • The struts.xml File (package element)
  • Package Inheritance
  • The struts.xml File (include element)
  • The struts.xml File (action element)
  • The struts.xml File (result element)
  • The global-results Elements
  • Results
  • Namespace Configuration
  • Namespace Example
  • The interceptor-related Elements
  • Exercise

Module 4 : Action Classes

  • Action
  • What Does an Action Do?
  • Encapsulates Interaction with the Model
  • Provides Locus for Data Transfer
  • Returns Control String for Result Routing
  • Packaging Your Actions
  • Implementing Action class
  • ActionSupport Class
  • ActionSupport Class validate method
  • Using Resource Bundles
  • Accessing Resources
  • Aware Interface
  • ServletContextAware Interface
  • ServletRequestAware Interface
  • SessionAware Interface
  • ServletResponseAware Interface
  • Example
  • Exercise

Module 5: The Persistence Layer

  • JDBC
  • Overview of JDBC
  • Connecting to the DataBase
  • Submitting the SQL statements
  • Retrieving and processing data
  • DB_Action Class
  • Data Access Object
  • Exercise
  • Hibernate
  • Overview
  • Hibernate
  • Architecture Of Hibernate
  • Code Example
  • Creating Persistent Java Objects
  • Mapping Persistent Object
  • Hibernate Configuration File
  • Inserting new record
  • Querying the database
  • Example
  • Exercise

Module 6: The Interceptors

  • Overview
  • Invocation of an Action
  • ActionInvocation Class
  • Built-in Struts 2 interceptors
  • Configuring Interceptors (struts.xml)
  • Setting and Overriding Parameters
  • Interceptor Interface
  • Create Your Own  Interceptor
  • Example
  • Exercise

Module 7: Type Conversion

  • Introduction
  • Build in Converters
  • Primitives And Wrapper Classes
  • Customizing Error Messages
  • Custom Type Converters
  • Configuring the framework
  • Example: Custom Type Converters
  • Exercise
  • Global Type Converters

Module 8:  OGNL and Tags Library

  • Introduction
  • OGNL and Struts 2
  • The Value Stack
  • The ActionContext
  • Expression Language
  • Reading Value Stack Object Properties
  • Selecting The Root Object For OGNL
  • ValueStack Details
  • Working with List and Array
  • Working with Map
  • Invoking a Method
  • An overview of Struts tags
  • Using OGNL to Set Attributes on Tags
  • The property tag
  • The set tag
  • bean Tag
  • UI Struts Tag Library
  • UI Input Tags
  • The Form Tag
  • The textfield, password Tags
  • The submit Tag
  • The reset Tag
  • The checkbox Tag
  • Non UI (Generic) Tags
  • if Tag
  • iterator Tag

Module 9: Validation Framework

  • Overview
  • Using a Validator
  • Validator Configuration
  • Validator Configuration (param)
  • Strurs Build-in Validators
  • Date validator
  • double Validator
  • requiredstring Validator
  • Example
  • Exercise
  • Writing a Custom Validator
  • Example
  • Exercise

Module 10: Internationalization

  • Introduction
  • Java Support for I18n
  • Struts 2 Support of i18n
  • Request_locale Parameter
  • Example
  • Exercise
  • Module 11: Inversion of Control
  • Introduction
  • Dependencies
  • Injecting Dependencies 
  • Setter Injection
  • Problem Description
  • Adding Spring to Struts 2
  • Web.xml
  • applicationContext.xml
  • struts.xml After Integration
  • Example
  • Exercise

Module 12: Advanced Topics

  • Alternative Method Invocation
  • Wildcard Method
  • Dynamic Method Invocation

Module  13:   Securing Struts 2 Applications (part 1)

  • Overview
  • How Web Security Works
  • Security Definitions
  • The Four Checks
  • Filters
  • FilterToBeanProxy
  • FilterChainProxy
  • Configuration
  • The Filter Chain
  • AuthenticationProcessingFilter
  • The HttpSessionContextIntegrationFilter
  • The ExceptionTranslationFilter
  • FilterSecurityInterceptor
  • AuthenticationManager
  • AccessDecisionManager
  • AuthenticationEntryPoint
  • Securing Web Resources
  • Example
  • Securing Method Invocation
  • Example
  • View-layer security
  • Example
  • Summary

Module  14:   Securing Struts 2 Applications (part 2)

  • Final Project