Struts
Syllabus
Struts 1.x and 2.x Training Overview
The Apache Struts web framework is a free open-source solution for creating Java web applications. It provides various components that can be used to develop MVC based web applications that are easy to develop and maintain.
This advanced course shows JSP and servlet programmers how to build web applications using the Apache Struts framework. Learner learn the Struts architecture and see how it captures a great deal of pre-existing best practice: in model-view-controller action mappings, form beans, custom tags for working with HTML forms, input validation, and the Tiles view-building framework. This Struts 1.3 and 2.0 version of the course illustrates the use of Struts 1.3 in detail and 2.0.
Struts 1.x & 2.x Course Prerequisite
Java Programming, Java Web Programming, or Java Enterprise Edition. Java Servlet and JSP programming experience, and a basic understanding of HTML and XML is required.
Struts 1.x & 2.x Training Course Objective
- Facilitate understanding of the Model-View-Controller (MVC) design pattern and how it is best applied to Java Web development
- Use Struts actions and action mappings to take control of HTTP requests/responses.
- Manage HTML form input and output with form beans, and use these beans to simplify data handling in the controller.
- Use JSTL and Struts custom tags to build robust and reusable JSP presentation logic.
- Support multiple client locales with various internationalization techniques.
- Define validation rules for input forms, and provide clear user feedback.
- Build complex presentations using decoupled, reusable tiles, screens and layouts.
Struts 1.x and 2.x Training Course Duration
- 60 Working days, daily one and half hour
Struts 1.x and 2.x Training Course Content
STRUTS – 1.x
Different types of Applications
Different Layers in Application
- Presentation Processing Layer
- Business Processing Layer
- Data Storage and Access Layer
Web Application Designing Models
- Model1-Architecture
- Model2-Architecture(MVC)
- Designing web application using MVC architecture
Struts Introduction
Struts Architecture
Struts Resources
- JSP
- ActionServlet
- web.xml
- ActionForm
- Action class
- Struts Configuration File
- Explanation about Struts-configuration File
- Detailed explanation of struts request processing flow
- Customizing RequestProcessor
Validations in Struts
Client Validations
Server-side Validations
- By using validate() method – programmatic approach
- By using Validator Framework – declarative approach
- Combination of programmatic approach and declarative approach
Different types of Action Forms and Dynamic Action Forms
- Action Form
- DynaActionForm
- ValidatorForm
- DynavalidatorForm
- ValidatorActionForm
- DynaValidatorActionForm
Exception Handling in Struts
- Programmatic Approach
- Declarative Approach
Local Forwards and Global Forwards
Local Exceptions and Global Exceptions
Struts predefined Tag libraries
- HTML Tag Library
- Bean Tag Library
- Logic Tag Library
- Nested Tag Library
- Tiles Tag Library
Predefined Action Classes
- ForwardAction
- IncludeAction
- DispatchAction
- LookupDispatchAction
- MappingDispatchAction
- SwitchAction
- LocaleAction
- DownloadAction
- EventDispatchAction
Internationalization(I18N) in Struts 1.x
Struts with Ajax Example
Preventing Double Submits
Data Source
File Uploading and Downloading in Struts
Tiles Framework
IDEs: Eclipse, Netbeans
STRUTS – 2.x
Basic Components of Struts 2
- Struts 2 Features
Differences between Struts 1.x & 2.x
Steps to Create Struts 2 Application
Core Components in Struts 2
- Filter Dispatcher
- Interceptors
- Value Stack
- Action Context
- Action Invocation
- OGNL(Object Graph Notation Language)
Struts 2 Work Flow
Struts 2 Action
Struts 2 Configuration
- Multi Configuration
- MultiNameSpace
Struts 2 Tag Library
Interceptors
- Params Interceptor
- Model Driven Interceptor
- Custom Interceptor
- Exception Handling
Struts 2 Validation
- Custom Validation
- Input Validation
Aware Interfaces
- Application Aware
- Session Aware
- Request and Response Awares
Internationalization(I18N) in Struts 2.x
Zero Configuration
- By Convention
- By Annotation
Files Uploading and Downloading
Securing struts application
Debugging and profiling
Progress Meters
Custom interceptors
Data store using struts 2
JFreechart plugins
Struts2 with Tiles2
IDEs: Eclipse, Netbeans