signonfilter.java

来自「IBM提供的购物车」· Java 代码 · 共 67 行

JAVA
67
字号
package com.webshop.filter;

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.*;

import com.webshop.domain.*;
import com.webshop.forms.*;
/**
 * @version 	1.0
 * @author
 */
public class SignonFilter implements Filter {
	
	String LOGIN_PAGE="/account/login.jsp";
	String ERROR_PAGE="/include/error.jsp";
	
	/**
	* @see javax.servlet.Filter#void ()
	*/
	public void destroy() {

	}

	/**
	* @see javax.servlet.Filter#void (javax.servlet.ServletRequest, javax.servlet.ServletResponse, javax.servlet.FilterChain)
	*/
	public void doFilter(
		ServletRequest req,
		ServletResponse resp,
		FilterChain chain)
		throws ServletException, IOException {
        
         HttpServletRequest request = (HttpServletRequest)req;
         HttpServletResponse response = (HttpServletResponse)resp;
         
	
		 AccountForm acctForm = (AccountForm) request.getSession().getAttribute("accountForm");
	     CartForm cartForm = (CartForm) request.getSession().getAttribute("cartForm");
	
	    if (acctForm == null || acctForm.getAccount() == null) {
	        request.setAttribute("targetPage",request.getRequestURI());
	        response.sendRedirect(LOGIN_PAGE);	 
	        }	    
	     else
	     {
	     	chain.doFilter(req, resp);	
	     	     
         }		
	}

	/**
	* Method init.
	* @param config
	* @throws javax.servlet.ServletException
	*/
	public void init(FilterConfig config) throws ServletException {

	}

}

⌨️ 快捷键说明

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