messagefilter.java

来自「springlive ch6」· Java 代码 · 共 42 行

JAVA
42
字号
package org.appfuse.web;

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;
import javax.servlet.http.HttpServletRequest;

import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;

public class MessageFilter implements Filter {
	private static Log log = LogFactory.getLog(MessageFilter.class);

	public void doFilter(ServletRequest req, ServletResponse res,
			             FilterChain chain) 
    throws IOException, ServletException {
		HttpServletRequest request = (HttpServletRequest) req;
        
        // grab messages from the session and put them into request
        // this is so they're not lost in a redirect
		Object message = request.getSession().getAttribute("message");
		if (message != null) {
            request.setAttribute("message", message);
            request.getSession().removeAttribute("message");
		}
        
        // set the requestURL as a request attribute for templates
        // particularly freemarker, which doesn't allow request.getRequestURL()
        request.setAttribute("requestURL", request.getRequestURL());

		chain.doFilter(req, res);
	}

	public void init(FilterConfig filterConfig) {}

	public void destroy() {}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?