TP2439
Java for Web Development using Struts 2 Training
This course will you teach you how to develop Web Applications using Struts 2 framework and some introduction to web security.
Course Details
Duration
5 days
Prerequisites
3 years Java programming experience with Servlets, JSP, Custom tags, JSTL, or after taking WA1278.
Course Outline
- 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
- 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
- Struts Configuration File
- 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
- 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
- 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
- Hibernate
- Architecture Of Hibernate
- Creating Persistent Java Objects
- Mapping Persistent Object
- Hibernate Configuration File
- Inserting new record
- Querying the database
- 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
- Type Conversion
- Introduction
- Build in Converters
- Primitives And Wrapper Classes
- Customizing Error Messages
- Custom Type Converters
- Configuring the framework
- Global Type Converters
- 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
- Validation Framework
- Using a Validator
- Validator Configuration
- Validator Configuration (param)
- Strurs Build-in Validators
- Date validator
- double Validator
- requiredstring Validator
- Writing a Custom Validator
- Internationalization
- Java Support for I18n
- Struts 2 Support of i18n
- Request_locale Parameter
- Inversion of Control
- Dependencies
- Injecting Dependencies
- Setter Injection
- Problem Description
- Adding Spring to Struts 2
- Web.xml
- applicationContext.xml
- struts.xml After Integration
- Advanced Topics
- Alternative Method Invocation
- Wildcard Method
- Dynamic Method Invocation
- Securing Struts 2 Applications
- 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
- Securing Method Invocation
- View-layer security