AbstractWizardFormController -Spring
Description: web applications requires to display more than one
screen that a user interacts with in order to complete a given task.
This sequence of screens is called a "wizard." And this controller
allows you to carry the same command object through an entire flow of
Web pages, thus allowing you to break up the presentation into
multiple stages that act on the single model
Problem Description: A User registration process where the values are
captured from the user in more than one page, and on the confirmation
from the user for the values entered, the values are stored in the
database (Saving the values to the database is beyond the scope of
this document).The Screen shots of the same are as below
Page 1:
Page 2:
Page 3:
Next – Takes you to next page
Previous – Takes you to the previous page
Submit – Persist the data
Cancel – will take you back to the first page
Implementation:
Step 1: Configuring the spring main servlet (DispatcherServlet) in
web.xml
In the web.xml we have named the servlet as spring; hence the spring
context file is required to be named as spring-servlet.xml
Step 2: Configuring the Controller in spring-servlet.xml
The Controller provide by spring framework for the above discussed
scenario is AbstractWizardFormController, hence our controller
WizardController.java has to implement AbstractWizardFormController
The controller is required to override at least three methods as
defined below
• processCancel – the action that is required to be taken when
the cancel button is pressed, the name of the button in the jsp
file has to be “_cancel”
• processFinish – the action that is required to be taken when
the submit button is pressed, the name of the button in the jsp
page has to be “_submit”
• validatePage – The validations for the each and every page in
the wizard
Important Note: In the userinterface, as shown in the problem
description can have next button and the previous button. The order
of the pages that has to be appeared when they are clicked is defined
by the order in which they are set in the application context file,
for example
In the example shown above the order are form1, form2 and form3 and
the single model object that is associated with these forms is
User.java
form1.jsp
form2.jsp
form3.jsp
User.java
For more details contact me at [email protected] or leave comment on
http://javacontractors.blogspot.com
Thank You,
Santosh Kothapalli SCWCD