view src/main/java/de/mpiwg/web/jsp/utils/CharsetFilter.java @ 7:ae3ebafabb7f

fixing a bug, when the FilterChain is null.
author "jurzua <jurzua@mpiwg-berlin.mpg.de>"
date Thu, 21 May 2015 14:25:51 +0200
parents 3e62083dbcbf
children
line wrap: on
line source

package de.mpiwg.web.jsp.utils;

import java.io.IOException;
import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;

public class CharsetFilter implements Filter {
	private String encoding;

	public void init(FilterConfig config) throws ServletException {
		encoding = config.getInitParameter("requestEncoding");

		if (encoding == null)
			encoding = "UTF-8";
	}

	public void doFilter(ServletRequest request, ServletResponse response, FilterChain next) throws IOException,
			ServletException {
		// Respect the client-specified character encoding
		// (see HTTP specification section 3.4.1)
		if (null == request.getCharacterEncoding())
			request.setCharacterEncoding(encoding);

		/**
		 * Set the default response content type and encoding
		 */
		response.setContentType("text/html; charset=UTF-8");
		response.setCharacterEncoding("UTF-8");

		if(next != null){
			next.doFilter(request, response);	
		}
	}

	public void destroy() {
	}
}