Exercise 7: Better Form and Action Handling : Struts « J2EE « Java

Exercise 7: Better Form and Action Handling

First edition copyright 2004 ObjectSource LLC. All rights reserved.
This training material and the accompanying lab exercises were prepared 
by Srikanth Shenoy for ObjectSource LLC.

GRANT OF LICENSE: ObjecSource LLC grants you a non-exclusive license to 
use the material. No part of this publication may be reproduced, stored 
in a retrieval system or transmitted in any form or by any means 
electronic, mechanical, photocopying, recording or otherwise, without 
the prior written permission of ObjectSource LLC. At its discretion, 
ObjectSource LLC may provide limited support through email or discussion 
forums at ObjectSource web site. ObjectSource incurs no obligation 
to provide any support under this Agreement.

Business Objectives: 
The following business objectives will be met at the end of this exercise: 
1. Split customer form into multiple pages 
2. Prevent the customer from going back and resubmitting and getting a database error. 
3. Better Exception handling in the system 
Technical Objectives for this exercise: 
The technical objectives of this exercise is to learn how to: 
19. To fix the bug: when Enter key is pressed in the Customer Search Form, a blank page is shown 
20. Use DispatchAction 
21. See how things work without exception handling mechanism 
22. Provide exception handling mechanism (DuplicateCustomerException) 
23. Create custom exception handlers 
24. Provide Global exception handling mechanism with JSP 
25. Create base ActionForm and Action Classes and use them 
26. Create multipage forms. (Expln Only) 
27. Handle Duplicate Form Submissions for CustomerForm (Expln Only) 
28. Use DynaActionForm for CustomerSearchForm (Expln Only) 
Default enter does not do search in Customer Search Form 
2. Using DispatchAction 
a. Create two methods Create and Edit (notice the case) in ShowCustomerAction so that each 
method taking exactly the same input parameters as the execute method. 
b. Add appropriate code into each of these methods 
c. Comment (or delete) the execute method 
1. When Enter key is pressed in the Customer Search Form, a blank page is shown 
a. This happens because the CustomerSearchAction performs the search only if serch.x or search.y 
are not null. Remove the if condition and it will work for enter key 

// when I try to deploy the exercise07.jar, some exceptions are printed
SEVERE: Exception sending context initialized event to listener instance of clas
s struts.example.util.ApplicationScopeInit
        at java.util.Properties$LineReader.readLine(Properties.java:365)
        at java.util.Properties.load(Properties.java:293)
        at struts.example.util.ApplicationScopeInit.contextInitialized(Unknown S
        at org.apache.catalina.core.StandardContext.listenerStart(StandardContex
        at org.apache.catalina.core.StandardContext.start(StandardContext.java:4



struts-training.zip( 26,264 k)

Related examples in the same category

1.Exercise 1: Building your first Struts ApplicationExercise 1: Building your first Struts Application
2.Exercise 2: Improving your first Struts Application Exercise 2: Improving your first Struts Application
3.Exercise 3: Using JSTL, Struts-EL etcExercise 3: Using JSTL, Struts-EL etc
4.Struts Recipes: Build Struts with Ant
5.Using bean:resource to expose the struts.config.xml to your view
6.Create a pluggable validator for cross-form validation 2Create a pluggable validator for cross-form validation 2
7.Struts: Generate a response with XSL
8. Hibernate and Struts  Hibernate and Struts
9. In-container testing with StrutsTestCase and Cactus
10.Exercise 4: Applying Gof and J2EE Patterns:Deploy to WebLogic and Test
11.Exercise 5: Search, List, Action Chaining, Editable List Form
12.Exercise 6: Paging
13.Exercise 8: Creating Struts Modules
14.Exercise 9: Using Commons Validator with Struts
15.Exercise 10: Using Struts and Tiles
16.Essential Struts ActionEssential Struts Action
17.A Full Struts ApplicationA Full Struts Application
18.Struts Creating the ViewStruts Creating the View
19.Struts: Creating the ModelStruts: Creating the Model
20.Struts: Creating the ControllerStruts: Creating the Controller
21.Creating Custom TagsCreating Custom Tags
22.The Struts TagsThe Struts Tags
23.The Struts and TagsThe Struts and Tags
24.Web Services and the Validator and Tile PackagesWeb Services and the Validator and Tile Packages
25.Struts Framework: A Sample Struts ApplicationStruts Framework: A Sample Struts Application
26.Struts Framework Validator
27.Struts Framework: TilesStruts Framework: Tiles
28.Struts Framework: Declarative Exception Handling
29.Struts: Internationalizing Struts Applications
30.Securing Struts Applications
31.Testing Struts Applications
32.Struts exampleStruts example
33.Blank Struts templateBlank Struts template
34.Struts Framework
35.Struts: bank application
36.Struts applicationStruts application
37.Struts application 2Struts application 2