Spring MVC Exceptional Handling using @ExceptionHandler example

In this post , we will see how to do exceptional handling in Spring MVC using @ExceptionalHandler. You can use @ExceptionHandler to redirect to error view when exception occurs.
Lets understand this with the help of example:

Source code:

click to begin

20KB .zip

1) Create a dynamic web project using maven in eclipse named “SpringMVCExceptionalHandlerExample”

Maven dependencies

2) Our pom.xml will look like below


Spring application configuration:

3) Change web.xml as below:

4) create a xml file named springrest-servlet.xml in /WEB-INF/ folder.
Please change context:component-scan if you want to use different package for spring to search for controller.Please refer to spring mvc hello world example for more understanding.

Create Controller

6) Create a controller named “HelloWorldController.java” in package org.arpit.java2blog.controller

Create view

As you can see, we have annotated two method i.e. catchCustomException and catchIOException with @ExceptionHandler. These methods will handle CustomException and IOException respectively.

Modify index.jsp as below

Create Custom_Excepion.jsp in /WEB-INF/ folder to handle CustomException exception.

Create IOException.jsp in /WEB-INF folder as below to handle IOException.

7) It ‘s time to do maven build.

Right click on project -> Run as -> Maven build

Maven build in eclipse
8) Provide goals as clean install (given below) and click on run
Maven build in eclipse

Run the application

9) Right click on project -> run as -> run on server
Select apache tomcat and click on finish

10) Lets hit below URL

As you can see, it is working fine with above URL.
Now lets hit some URL which will throw exception and exception will be handled by @ExcpetionHandler.

When you hit below URL.

As you can see, when you hit above URL , CustomException is thrown and handled by catchCustomException method.

When you hit below URL.

As you can see, when you hit above URL , CustomException is thrown and handled by catchIOException method.

Add Comment