- Course Length:
- 5 Days
- Course Description:
- This advanced course shows JSP and servlet programmers how to build web applications using the Apache Struts framework. Students 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 and custom tags for working with HTML forms, input validation, and the Tiles view-building framework. Two chapters near the end of the course cover configuration techniques and other advanced topics.
- Who Should Attend:
- This course is for experienced Java programmers.
- Benefits of Attendance:
-
Upon completion of this course, students will be able to:
- 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.
- Prerequisites:
- Students should have experience with Java programming, Servlets programming, and JSP Basic knowledge of XML is recommended but not essential.
- Course Outline:
-
- Chapter 1: Struts Architecture
- MVC and Model 2
- Command Pattern
- Struts Framework
- More XML, Less Java!
- Action Mappings
- JavaBeans in Struts
- Working with Forms
- Validation
- Presentation Technology
- Tiles
- Chapter 2: Action Mappings
- Command Pattern for Web Applications
- ActionServlet
- Action
- ActionMappings
- Struts Configuration
- Selecting a Forward
- Global Forwards
- Global Exception Handlers
- Declarative Exception Handling
- Chapter 3: Forms
- Working with HTML Forms
- Action Forms (Form Beans)
- Relationship to Input
- Relationship to Actions
- Relationship to the Model
- Relationship to Output
- DynaActionForm and Map-Backed Forms
- Validation
- Coarse-Grained Form Beans
- Chapter 4: Struts Tag Libraries
- Building View Components
- Struts Tag Libraries
- Attributes and Struts Expressions
- Building Forms
- <html:form>
- <html:text> et. al.
- Forms and Form Beans
- Scope and Duration of Form Data
- Managing Hyperlinks
- Error Messages
- Logic Tags
- Chapter 5: The JSP Standard Tag Library
- JSTL Overview
- JSP Expression Language
- Core Tags
- Formatting Tags
- XML Tags
- SQL Tags
- Mixing JSTL, EL, Scripts and Actions
- Chapter 6: Internationalization And Localization
- i18n in Java
- i18n in Actions
- i18n in JSTL
- i18n in Validation
- Chapter 7: Input Validation
- Validation in Web Applications
- Validation in Struts
- The Struts Validator Plug-In
- Validating ActionForm Subtypes
- Configuring Validation
- Standard 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
- Chapter 8. Advanced Configuration
- Struts Configuration in Depth
- Wildcards
- Extensions
- The Configuration Object Model
- Subclasses and <set-property>
- Plug-Ins
- Integrating Other Frameworks
- Role-Based Security
- Chaining Actions
- The ComposableRequestProcessor Class
- Configuring Command Chains
- Modules
- Chapter 9: Under The Hood
- Global Objects
- Specialized Struts Actions
- The Utility Package
- The Commons BeanUtils Class
- Form Beans as Adapters to the Business Tier
- Reusing Validation Rules
- Graceful Validation
- Chapter 10: 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
- Appendix B: Quick Reference
- Chapter 1: Struts Architecture













