How exception handling is provided in struts?
Answer Posted / qim2010
There are two approaches available for the exception
handling in struts.
Declarative:
Exceptions are defined in the struts-config.xml file and if
the exception occurs the control is automatically passed to
the appropriate error page. The <exception> tag is used to
define the exception in the struts-config.xml file.For
Example : (( If RuntimeException in SaveEmpAaction class ,
control goes to exception.jsp)
<action path="/saveEmp"
type="com.techfaq.SaveEmpAaction"
input="/empform.jsp" >
<exception key="error.system"
type="java.lang.RuntimeException" path="/exception.jsp" />
</action>
Where
Key: The key defines the key present in
MessageResources.properties file to describe the exception
occurred.
Type: The class of the exception occurred.
Path: The page where the control is to be followed in case
exception occurred.
Handler: The exception handler which will be called before
passing the control to the file specified in path attribute
OR
Defining the Exceptions Globally for the struts-config.xml :
( If RuntimeException in any Action class , control goes to
exception.jsp)
<global-exceptions>
<exception key="error.system"
type="java.lang.RuntimeException" path="/exception.jsp" />
</global-exceptions>
Programmatic:
In this approach the exceptions are caught using normal java
language try/catch block and instead of showing the
exception some meaningful messages are displayed. In this
approach the flow of control is also maintained by the
programs. The main drawback of the approach is the developer
has to write the code for the flow of the application.
| Is This Answer Correct ? | 4 Yes | 1 No |
Post New Answer View All Answers
What does execandwait interceptor?
What is actioninvocation?
What are the differences between Struts1 and Struts2 or how Struts2 is better than Struts1?
How can you create your custom interceptor in struts 2?
How can we integrate log4j in Struts2 application?
What is used to display the intermediate result in an interceptor?
Describe the two types of formbeans.
What is validate() and reset() functions?
What is the purpose of @requiredstringvalidator?
What’s the difference between struts and turbine? What’s the difference between struts and espresso?
How can link tag’s action attribute be used?
Define struts?
What is the difference between shocks and struts?
Can you explain custom tag?
How is the action mapping specified?