Struts FAQ

Different Types of action classes?

  • Action 
  • Dispatch Action
  • Look up dispatch Action
  • Mapping dispatch Action
  • Locale Action
  • Include Action
  • Forward Action
  • Switch Action
  • Download Action

 

—————

Difference between web.xml and struts config.xml?

Web.xml :

web.xml is a deployment descrptor. Contains the information about Application ,servlet configuration,servlet mapping and load on startup details

StrutsConfig.xml

it relatd to sruts framework, Contains the information about formbean,global forwards,action mapping,controller information,application resource property file information, if you are using the validator framwork,Tiles means that information also avilable in struts Config.xml

—————

Explain the struts flow ?

Struts Flow start with ActionServlet then call to process() method of RequestProcessor.

Step 1. Load ActionServlet using load-on-startup and do the following tasks

 

Any struts web application contain the ActionServlet configuration in web.xml file. On load-on-startup the servlet container Instantiate the ActionServlet . 
 
First Task by ActionServlet :
                                                    The ActionServlet takes the Struts Config file name as an init-param. At startup, in the init() method, the ActionServlet reads the Struts Config file and load into memory. 
 
Second Task by ActionServlet :
                                                    If the user types https://localhost:8080/app/submitForm.do in the browser URL bar, the URL will be intercepted and processed by the ActionServlet since the URL has a pattern *.do, with a suffix of "do". Because servlet-mapping is 
 
<servlet-mapping> 
<servlet-name>action</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
 
Third Task by ActionServlet :
                                                 Then ActionServlet delegates the request handling to another class called RequestProcessor by invoking its process() method.
 
Step 2. ActionServlet calls process() method of RequestProcessor.
 
The RequestProcessor does the following in its process() method:
 
a) The RequestProcessor looks up the configuration file for the URL pattern /submitForm (if the URL is https://localhost:8080/app/submitForm.do). and  finds the XML   block (ActionMapping).
 
b) The RequestProcessor instantiates the EmpForm and puts it in appropriate scope – either session or request. 
     The RequestProcessor determines the appropriate scope by looking at the scope attribute in the same ActionMapping.
 
c) RequestProcessor iterates through the HTTP request parameters and populates the EmpForm.
 
d) the RequestProcessor checks for the validateattribute in the ActionMapping. 
    If the validate is set to true, the RequestProcessor invokes the validate() method on the EmpForm instance. 
    This is the method where you can put all the html form data validations. 
    If Validate fail the RequestProcessor looks for the input attribute and return to JSP page mentioned in input tag. 
    If Validate pass goto next step. 
 
e) The RequestProcessor instantiates the Action class specified in the ActionMapping and invokes the execute() method on the Action instance.
 
f) In return mapping.findForward("success") 
   RequestProcessor looks for the success attribute and forward to JSP page mentioned in success tag. i.e success.jsp. 
   In return mapping.findForward("failure") 
   RequestProcessor looks for the failure attribute and forward to JSP page mentioned in failure tag. i.e. failure.jsp
 

 

—————

How you will display the dynamic List values under select tag in jsp ? (Assume that your form bean contains the List)

using html:optionsCollections tag

 

<html:select property="country" >
        <html:option value="0">Select Country</html:option>
        <html:optionsCollection name="InputForm" property="countryList" label="countryName" value="countryId" />
</html:select>

—————


Topic: Struts FAQ

Date: 23/12/2023

By: 1

Subject: Mr.

1

Reply

—————

Date: 23/12/2023

By: 1

Subject: Mr.

1

Reply

—————

Date: 23/12/2023

By: 1

Subject: Mr.

1

Reply

—————

Date: 23/12/2023

By: 1

Subject: Mr.

1

Reply

—————

Date: 23/12/2023

By: 1

Subject: Mr.

1

Reply

—————

Date: 23/12/2023

By: 1

Subject: Mr.

1

Reply

—————

Date: 23/12/2023

By: 1

Subject: Mr.

1

Reply

—————

Date: 23/12/2023

By: 1

Subject: Mr.

1

Reply

—————

Date: 23/12/2023

By: 1

Subject: Mr.

1

Reply

—————

Date: 23/12/2023

By: 1

Subject: Mr.

1

Reply

—————