Intercepting HTTP Request in Spring Framework

Sometime we need to intercept HTTP request and perform some logic on it also can decide whether to forward that request or can redirect to any other resource.

So, for this purpose Spring has something called as filter.

You need to add filter configuration in web.xml-



filter-mapping shows to which URL pattern you want to apply filter.

Now Actual Filter Code is written as:

public class MyFilter implements Filter {
	public void doFilter(ServletRequest request, ServletResponse response,
			FilterChain chain) throws IOException, ServletException {
		String token = new String();
		String expected_token = new String("12345");
		if(token != null && !token.isEmpty())
		if (token.equals(expected_token)) {
			chain.doFilter(request, response);
		} else {
			request.getRequestDispatcher("/WEB-INF/pages/error.jsp").forward(request, response);
			request.getRequestDispatcher("/WEB-INF/pages/error.jsp").forward(request, response);

	public void destroy() {

	public void init(FilterConfig filterConfig) throws ServletException {

I have written sample filter which checks for URL parameter named token, retrieves value of it and check whether it matches with expected value
if yes then request is forwarded using dofilter(..) method else it is redirected to JSP page showing error.

Basically what I did is, I have implemented interface filter and have overridden its methods init(), destroy() and dofilter().

You can write your own business logic inside these methods.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s