Introduction to Struts 2 Interview Questions and Answers
Struts 2 is a web application framework for developing Java enterprise applications. Apache Software Foundation developed it. It was initially released in the year 2006. It is written in Java. It supports cross-platform. It is based on MVC architecture, which is referred to as a software design pattern for developing applications. The features of Struts 2 are simplified testability, Ajax support, Thread-safe, Template support etc.
If you are looking for a job related to Struts 2, you need to prepare for the 2020 Struts 2 Interview Questions. It is true that every interview is different as per the different job profiles. Here, we have prepared the important Struts 2 Interview Questions and Answers, which will help you get success in your interview.
In this 2020 Struts 2 Interview Questions article, we shall present the 10 most important and frequently used Struts 2 interview questions. These questions will help students build their concepts around Struts 2 and help them to crack the interview. These questions are divided into two parts are as follows:
Part 1 – Struts 2 Interview Questions (Basic)
This first part covers basic Struts 2 Interview Questions and Answers.
Q1. What are the core components of the Struts 2 based application?
The MVC pattern in struts 2 has the components that are Actions, Interceptors, Value stack/ OGNL, Result/ Result types, and view technologies.
Q2. Difference between Strut 1 and Strut 2?
This is the basic Strut 2 Interview Questions asked in an interview. In Strut 1, the action class is not POJO and need to inherit the abstract class. The front controller is an action servlet. It has only JSP for the component view. In strut 1, a configuration file can be placed inside the WEB-INF directory. It uses the concept of Request Processor class while processing request. In Strut 1, action and models are separate.
In Strut 2, the action class is POJO, and there is no need to inherit any class or implement any interface. It has JSP, free-market etc., for the view component. In strut 2, the function controller is Struts Prepare and Execute filter. In this, a configuration file must be named as struts.xml and placed inside the classes directory. It uses the concept of Interceptors while processing the request. In strut 2, action and models are combined within the action class.
Q3. What is the life cycle of a request in strut 2?
The life cycle of a request in strut is:
- The user sends a request to the server for requesting for some pages.
- The filter dispatcher looks at the request and then determines appropriate action.
- Configured interceptor functionalities apply such as validation and file upload etc.
- The selected action is executed to perform the requested operation.
- After that, again configured the interceptors that are applied to do any post-processing, if required.
- Finally, the result is prepared by a view and returns the result to the user.
Let us move to the next Struts 2 Interview Questions.
Q4. How do interceptor and filters are different?
The interceptors are based on struts 2. It executes for all the request qualifies for a front controller that is servlet filter and can be configured to execute additional interceptor for particular action execution. Methods in interceptor can be configured whether to execute or not by means of exclude methods or include methods.
The filters are based on servlet specification. Executes on the pattern matches on request and not configurable method calls.
Q5. How does struts 2 a better framework than struts 1?
Interceptors help in achieving the struts 2 better frameworks as follows:
- It can be used anywhere in desktop applications with small or no change to existing web applications. For struts, actions are now POJO, and it is easier to unit test, and interceptor helped in achieving this.
- Most of the trivial work is made easier to achieve. An example is an automatic form population.
- The UI is easier and validated in the form of themes and a well-known DOJO framework.
- There are smart configuration and defaults.
- It can be used for next-generation RESTFUL services.
- It is highly pluggable, integrates other technologies like spring, hibernates etc., at ease.
Part 2 – Struts 2 Interview Questions (Advanced)
Let us now have a look at the advanced Struts 2 Interview Questions.
Q6. What are the inbuilt themes that are provided by strut 2?
There are 3 different inbuilt themes:
- Simple theme: It is a minimal theme which is having very little content. It means that the text field tag renders the HTML tag without label, validation, error reporting or any other formatting or functionality.
- XHTML theme: It is referred to as the default theme used by struts 2 and provides all the basics that a simple theme provides. It adds the other several features like standard two-column table layout for the HTML labels for each of the HTML, validation and error reporting etc.
- Css_xhtml theme: This is the theme that provides all the basics that the simple theme provides, and it adds other several features like the standard two-column CSS-based layout and using div tag for HTML struts tags, labels for each of the HTML struts tags and placed according to the CSS style sheet.
Q7. What are the Struts 2 validation framework, and it is working?
In Strut 2, a validation framework helps the application run the rules to perform the validation before the action method is executed. The action class should extend the action support class for getting the validation of execution of a method. In Struts 2, the validation framework works in this way like; when the user presses the submit button, it will automatically call the validation method to execute, and if any of the condition statement is true, then strut 2 will call its add-field-error method. If any error found, then strut 2 will not continue with execute method. Even that framework will return the input as a result of calling the function. When validation fails and strut2 return input, and it will display the view file. It used strut 2 tags so the error messages will be added automatically, and these error messages are the one which we added in the addField error method, and it takes two arguments in which the first is the form field name to which error applies and a second is an error message to display above that form field.
Let us move to the next Struts 2 Interview Questions.
Q8. Explain XML based validation in struts 2?
In Struts 2, XML based validation provides more options of validation like email validation, integer range validation, form validation field, expression validation, regex validation, required validation, string length validation and required string validation etc. In Struts 2, the XML file needs to be named as ‘actionclass’-validation.xml
Q9. Explain internationalization?
This is the most popular Struts 2 Interview Questions which is asked in an interview. It is the process of planning and implementing products and services so that they can easily be adapted to specific local languages and cultures, which is referred to as localization, and the process of enablement of localization is called internationalization.
Q10. What is a value stack?
The value stack is a set of several objects which keep the object in order as Temporary objects, the model object, the action object and named objects.
This has been a guide to the list of Struts 2 Interview Questions and Answers so that the candidate can crackdown these Struts 2 Interview Questions easily. Here in this post, we have studied the top 10 Struts 2 Interview Questions which are often asked in interviews. You may also look at the following articles to learn more –