Set - 5

Question 1 :

How can one make any "Message Resources" definitions file available to the "Struts Framework" environment?

Answer :

"Message Resources" definitions file are simple .properties files and these files contain the messages that can be used in the struts project.
"Message Resources" definition files can be added to the struts-config.xml file through tag. Example:

Question 2 :

What is an "Action Class"?

Answer :

The "Action Class" is part of the "Model" and is a wrapper around the business logic.
The purpose of the "Action Class" is to translate the HttpServletRequest to the business logic.
To use the "Action", we need to subclass and overwrite the execute() method.
All the database and business processing is done in the "Action" class.
It is advisable to perform all the database related work in the "Action" class.
The ActionServlet (command) passes the parameterized class to ActionForm using the execute() method.
The return type of the execute method is ActionForward which is used by the Struts Framework to forward the request to the file according to the value of the returned ActionForward object.

Question 3 :

Write code of any Action Class?

Answer :

Here is the code of Action Class that returns the ActionForward object.

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
public class TestAction extends Action{

public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request,
HttpServletResponse response) throws Exception{
 return mapping.findForward("testAction");


Question 4 :

What is an "ActionForm"?

Answer :

An "ActionForm" is a JavaBean that extends org.apache.struts.action.ActionForm.
ActionForm maintains the session state for web application and the "ActionForm" object is automatically populated on the server side with data entered from a form on the client side.

Question 5 :

What is Struts Validator Framework?

Answer :

The "Struts Framework" provides the functionality to validate the form data.
It can be used to validate the data in the user's browser as well as on the server side.
Struts Framework checks the JavaScript code and it can be used to validate the form data on the client browser.

Server side validation of form data can be accomplished by subclassing your "form" Bean with DynaValidatorForm class.

The "Validator" framework was developed by David Winterfeldt as a third-party "add-on" to Struts.
Now the Validator framework is part of the "Jakarta Commons" project and it can be used with or without Struts.

The Validator framework comes integrated with the Struts Framework and can be used without any making any additional settings.

Question 6 :

Describe the details of XML files used in the "Validator Framework"?

Answer :

The Validator Framework uses two XML configuration files
1) validator-rules.xml and
2) validation.xml.
The validator-rules.xml defines the standard validation routines.
These are reusable and used in validation.xml to define the form specific validations.
The validation.xml defines the validations applied to a form bean.

Question 7 :

How would you display "validation fail" errors on a JSP page?

Answer :

Following tag displays all the errors:

Question 8 :

How can one enable front-end validation based on the xml in validation.xml?

Answer :


tag allows front-end validation based on the xml in validation.xml.
For example the code:
generates the client side JavaScript for the form "logonForm" as defined in the validation.xml file.
The when added in the JSP file generates the client side validation script.