why do we typecast ActionForm into our plain java bean
class in Action class? What is the reason?
Answer Posted / supra
Use ActionForm to work on session data
In a Struts-based Web application, each ActionForm extends
org.apache.struts.action.ActionForm. These ActionForms
encapsulate page data and provide a validation framework to
validate request parameters.
Most Web applications maintain data in session to make them
available throughout the application. This best practice
addresses this Web application feature. It allows methods
toSession() and fromSession() to move session data to and
from the form data. Thus, it addresses session data
maintenance in a Web application.
To adhere to this practice, follow these steps:
Create an abstract class named BP3Form by extending
org.apache.struts.action.ActionForm.
In BP3Form, add methods with access modifiers as in public
abstract void toSession(SessionData sessionData) and void
fromSession(SessionData sessionData).
In every ActionForm, extend BP3Form and implement the
abstract methods in which the form data is transported to
and from the session.
The corresponding Action class may determine the order in
which these methods are called. For example, you could
invoke method toSession() on the ActionForm just before
actionForward is determined.
When to use this practice
This practice is most useful when session data is
maintained as a single object and/or every page manipulates
or uses session data.
| Is This Answer Correct ? | 1 Yes | 5 No |
Post New Answer View All Answers
What is struts in j2ee?
How can we write our own interceptor and map it for action?
What is s token?
Give an example of validates method used to avoid errors.
What is the purpose of '@keyproperty'?
What is controller in struts ?
What is the purpose of @doublerangefieldvalidator annotation?
Explain struts?
Describe the two types of formbeans.
What is actioninvocation?
Which interceptor is responsible for i18n support?
Why do we use struts?
How can you create your custom interceptor in struts 2?
Which technologies can be used at view layer in struts?
Do I have to credit struts on my own website?