WA1167 Introduction to Struts 1.1 using WSAD V4.1 Training and Courseware Course Outline

1. Struts Architecture and Overview
  • Introduction to Struts
  • Objectives
  • Review: MVC model
  • What is Struts?
  • Struts flow
  • Components in Struts?
    • The Model
    • The View
    • The Controller
  • struts-config.xml
    • The <data-sources> element
    • The <form-beans> element
    • The <global-forwards> element
    • The <action-mappings> element
    • Sample
  • The role of web.xml for the application
  • Configuring Struts in web.xml
    • web.xml content
    • Steps to configuring Struts in web.xml
    • Sample
  • Summary
2. A Simple Struts Application
  • The Goal of the Application
  • The input form· The struts-config.xml
  • The Form Bean class
  • The Action class
  • The result page
3. Struts Development Cycle
  • Objectives
  • Struts development cycle
  • Gathering requirements
  • Defining screen requirements
    • Data vs. FormBean
    • define FormBean
  • Determining the screen flow
  • Defining the ActionMappings in struts-config.xml
  • Developing the FormBean
    • The reset ( ) method
    • Form validation using the validate ( ) method
    • ActionError
    • Define message key
  • Developing Action Class
    • Action and Action Class
    • The execute() method
    • ActionForward
    • ActionMapping class
    • execute() example
    • Example execute() method
    • Developing business logic - EJB
  • Developing JSPs
  • Configuring struts-config.xml and web.xml
  • Build, pack and deploy
4. Struts features in WSAD
  • Objectives
  • Struts binary distribution
  • Directory structure of Struts application
    • Example
  • WSAD support for Struts
  • Developing a web application using WSAD features of Struts
5. Struts Tag Libraries
  • Objectives
  • JSP taglib directive
  • Components of a tag library
  • The JSP File
  • The tag library descriptor
  • The tag Handler Class
  • An example
    • The TLD File - carPrice.tld
    • TDL File - example
    • The Handler Class - CarPriceHandler.java
    • The Handler Class - example
    • The JSP File - Carprice.jsp
  • Tag Lib Handler life cycle
  • Directory structure: where custom tag libraries fit
  • Struts TagLib
  • Bean tags
    • bean:message
    • bean:define
    • bean:page
    • bean:include
    • bean:cookie
    • HTML tags
      • html:form
      • html:submit
      • html:text
      • html:link
      • html:password
    • Logic tags
      • Functionality
      • logic:equal
      • logic:iterate
    • Template tags
6. Struts Plugin, Internationalization and Error Handling
  • Objectives
  • Struts plugins
    • Creating a plugin
    • Configuring a plugin
  • Internationalization
    • Struts Internationalization Mechanisms
    • Adding internationalization to the example application
    • Formatting messages
  • Error Handling
    • Struts Error Handling Mechanisms
    • ActionError and ActionErrors
    • Error handling from a form bean
    • Error handling from an action
    • Formatting error messages
    • Struts exception handling
    • Adding error handling to the example application
7. Miscellaneous Advanced Features
  • Objectives
  • HTTP Redirection
  • Dealing with check boxes
  • Context sensitive form validation
  • DispatchAction
  • BeanUtils package
  • Digester package
  • DynaActionForms
  • Multi-application support
  • Validators
8. Templates, Tiles and JSTL
  • Objectives
  • Struts Templates
  • Template tags - insert, get and put
  • Struts 1.1 tiles support
  • Inheritance in tiles definitions
  • JSTL overview
  • JSTL and Struts