Web Consulting, Training & Mentoring Solutions

Home Feedback Contents Search Resources Contact Us Struts Using WSAD/RAD


WCTMS508: Struts Programming using WebSphere Studio Application Developer (WSAD/RAD)
Duration5 days
Method of DeliveryInstructor led
% of Hands-On60%
Instructor AvailabilityPlease call
Courseware AvailabilityPlease call
Courseware pricePlease call
Onsite TrainingPlease see
Public TrainingPlease see
Customization Please call

Table of Contents

  1. Description
  2. Audience
  3. Objectives
  4. Topics
  5. Prerequisites
  6. Full Course Description
  7. Software Requirement
  8. Hardware Requirement


This advanced course shows JSP and servlet programmers how to build "Model-2" Web applications using the Jakarta Struts project from Apache. Students learn the Struts architecture and see how it captures a great deal of pre-existing best practice in Web application development. They build applications from scratch using the Struts 1.1 code base, advancing through actions and action mappings, form beans, and request forwarding. They use relational data at the model layer and learn to configure JDBC data sources under Struts. Throughout, the course emphasizes the great facility in Struts of using XML declarations to replace boilerplate Java coding.

The course then shifts from these controller techniques to a focus on presentation. Students learn to use various libraries of custom JSP tags: the JSP Standard Tag Library (which supersedes a number of Struts tags), Struts HTML tags for form-building and validation, and the Tiles library for robust and reusable page layouts.

The course treat issues of effective Struts development: one focuses on "under the hood" coding techniques and one on best practices at a design level. By the end of the course, students are building complex, internationalized Web applications that validate user input, handle error conditions gracefully, and make best use and reuse of control and presentation logic through actions, form beans, validators, business and persistence JavaBeans, and Tiles.

Also student learn how to use the WebSphere tools to do design, implement, debuge and deploy Struts Framework.

Back to Top


This course is designed for programmers that have at least 6 month of hands on experience using Java, Servlet & JSP or have taken "J2EE using WSAD" course already. Managers would benefit as an overall structure of a Web Application will be discussed and issues with regard to development cycle will be raised. 

Back to Top


  • 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 persistent data in a Struts application with JDBC

  • 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

Back to Top


  • Web Application Artifacts
    • Atomic View of Web Application
    • Development Process
    • Roles
    • Frameworks & Tools
  • Java/J2EE overview
    • Relationship between Java and J2EE
      • J2EE APIs
        • Servers, JSP, JDBC, EJB, JMS, JNDI, JTA, etc.
    • Essential components for Web Applications
    • What is a Web Server
    • What is a Container
      • Web Container
      • EJB Container
    • What is an Application Server Architecture
  • Web Architecture
    • Web Application
    • Enterprise Application
    • Model View Controller Architecture
      • Type 1
      • Type 2
  • WebSphere Studio Application Developer (WSAD) for Web & J2EE Projects
    • Help
    • Application developer information
    • Java development
    • Web development
    • J2EE application development
    • Database tools
    • Application testing & publishing
  • Struts Architecture
    • MVC and Model 2
    • Command Pattern
    • Jakarta Struts
    • More XML, Less Java!
    • Action Mappings
    • JavaBeans in Struts
    • Working with Forms
    • Validation
    • Relational Models
    • Presentation Technology
    • Tiles
  • Action Mappings
    • Command Pattern for Web Applications
    • ActionServlet
    • Action
    • ActionMapping
    • Struts Configuration
    • Selecting a Forward
    • Global Forwards
    • Forwarding Actions
    • Other Action Subtypes
    • Declarative Exception Handling
  • Forms
    • Working with HTML Forms
    • What Not To Do
    • Action Forms
    • Relationship to Input
    • Relationship to Actions
    • Relationship to the Model
    • Relationship to Output
    • DynaActionForm and Map-Backed Forms
    • Validation
    • Coarse-Grained Form Beans
  • JDBC
    • Drivers
    • DriverManager (JDBC 1.0)
    • DataSource (JDBC 2.0)
    • Connection
    • Statement
    • ResultSet
    • The Struts Data-Source Manager
    • Multi-Tier Design
    • Business Logic Beans
    • Persistence Logic
    • EJB
  • Struts Tag Libraries
    • Building View Components
    • Struts Tag Libraries
    • Attributes
    • Building Forms
    • <html:form>
    • <html:text> et. al.
    • Forms and Form Beans
    • Scope and Duration of Form Data
    • Managing Hyperlinks
    • Error Messages
    • Logic Tags
  • The JSP Standard Tag Library
    • JSTL Overview
    • JSP Expression Language
    • Core Tags
    • Formatting Tags
    • XML Tags
    • SQL Tags
    • Mixing JSTL, EL, Scripts and Actions
  • Internationalization & Localization
    • i18n in Java
    • Locale
    • ResourceBundle
    • i18n in Actions
    • i18n in JSTL
    • i18n in Validation
  •  Input Validation
    • Validation in Web Applications
    • Validation in Struts
    • The Struts Validator Plug-In
    • Validating ActionForm Subtypes
    • Configuring Validation
    • Validators
    • Rules
    • Is <html:form> Necessary?
    • Reporting Errors
    • Multi-Page Validation
    • Client-Side Validation
    • Limitations on the Client Side
    • Implementing a Validator
    • Implementing ActionForm.validate
  • Under the Hood
    • Global Objects and Keys
    • Modules
    • ActionServlet, RequestProcessor, ExceptionHandler
    • Struts Configuration in Depth
    • The org.apache.struts.config Package
    • Plug-Ins
    • Logging with Commons and Log4J
    • Configuring Log4J
    • Logging in Web Applications
    • The org.apache.struts.util Package
    • Commons BeanUtils
  • Best Practices
    • Cardinalities in Struts Design
    • Coarse-Grained Form Beans
    • Many Actions from One View
    • Multiple Forwards
    • Many Mappings to One Action
    • Chaining Actions
    • Dynamic Forwarding
    • Form Beans as Mediators
    • Using Reflection and BeanUtils
    • Reusing Validation Rules
    • Mapping-Based Validation
    • Graceful Validation
  • Tiles
    • Consistent Look and Feel
    • Reusable Layouts and Content
    • The Tiles Framework
    • Instantiating Layouts
    • Body-Wrap Insertions
    • Tiles and Stylesheets
    • Working with Tiles Attributes
    • The Tiles Context
    • Definitions
    • Aggregation and Inheritance
    • The Tiles Plug-In
    • Forwarding to Definitions
    • Performance Considerations
  • An Overview of J2EE Design Patterns
  • An Overview of Best Practices for Java and J2EE programming
  • Introduction to Java WSAD How To(s)

  •         How to start WebSphere Studio Application Developer (WSAD)

  •         How to create a Project

  •         How to Import codes

  •         How to add/change Package name for existing source code(s)

  •         How to run/execute a Java Program

  •         How to Debug a Java program (Instructor Demo)

  •         How to add a package (Instructor Demo)

  •         How to create a class (Instructor Demo)

  •         How to run an Applet (Instructor Demo)

  •         How to get Help (Instructor Demo)

  •         How to Export a project (Instructor Demo)

  •         How to Format your source code (Instructor Demo)

  •         How to change your WSAD Preferences (Instructor Demo)

  •         How to use the Code Assistance (Instructor Demo)

  •         How to Close a project (Instructor Demo)

  •         How to Organize Imports, Add Imports (Instructor Demo)

  •         How to change project Properties (Instructor Demo)  

  • For Web Development the following will be Instructor Demo:

  •         How to create a Web project

  •         How to import a WAR file

  •         How to import a Servlet

  •         How to update the web.xml Deployment Descriptor (DD)

  •         How to maintain the EAR project and Its DD

  •         How to create a Servlet

  •         How to run a Servlet

  •         How to create a JSP

  •         How to run a JSP

  •         How to fix a broken link

  •         How to hide a project

  •         How to add external libraries to the CLASSPATH or Project

  •         How to debug a Servlet

  •         How to run WSAD Examples

  •         How to run two server at the same time

Back to Top


Experience in Java, Servlet, JSP programming  and  Object Oriented Methodology is must.

Back to Top

Software Requirement and setup

  • An Intergraded Development Environment (IDE) such asWSAD that can be downloaded from IBM site
    • Other IDEs, such as Eclipse, JDeveloper, JBuilder
    • Or just J2SE 1.4.x SDK
  • An Editor such as TextPad that cab be downloaded from TextPad.com
  • DB2 Personal Edition Database that can be downloaded from IBM site
    • Examples could be ported to other databases such as Cloudscape, Oracle, MySQL, etc.
  • Files from your instructor
Back to Top

Hardware Requirement

  • Pentium-IV or better with 512RAM, 1G is preferred and 20G hard drive.
Back to Top

Home ] Up ]       

Send mail to WebMaster@WebCTMSolutions.com with questions or comments about this web site.
Copyright 2004 Web Consulting, Training & Mentoring Solutions
Last modified: April 06, 2009