authoritytag.java

来自「asp制作的在线考试系统」· Java 代码 · 共 54 行

JAVA
54
字号
package cn.hxex.exam.taglib;

import java.io.IOException;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.jsp.JspException;
import javax.servlet.jsp.tagext.TagSupport;

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

import cn.hxex.exam.struts.StrutsConstants;

/**
 * 用户权限校验的标签
 * 
 * @jsp.tag name="authority" body-content="empty"
 * 
 * @author galaxy
 * 
 */
public class AuthorityTag extends TagSupport
{
	protected final Log log = LogFactory.getLog(getClass());

	public int doEndTag() throws JspException
	{
		// 得到用户请求对象
		HttpServletRequest request = (HttpServletRequest) pageContext
				.getRequest();
		Boolean checked = (Boolean) request
				.getAttribute(StrutsConstants.REQUEST_CHECK_FLAG);

		// 判断是否已经进行了权限校验
		if (checked != null && checked.booleanValue())
			return EVAL_PAGE;

		// 对于没有通过权限校验的访问,返回到登录页面
		HttpServletResponse response = (HttpServletResponse) pageContext
				.getResponse();
		try
		{
			response.sendRedirect(request.getContextPath() + "/logon.jsp");
		}
		catch (IOException ex)
		{
			throw new JspException(ex);
		}
		return SKIP_PAGE;
	}

}

⌨️ 快捷键说明

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