📄 authenticationfilter.java
字号:
package com.jlobo.common;
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 javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import com.jlobo.web.views.UserBean;
public class AuthenticationFilter implements Filter {
public void init(FilterConfig filterConfig) throws ServletException {
}
public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {
HttpServletRequest request = (HttpServletRequest) servletRequest;
String path = request.getContextPath();
// System.out.println("客户端访问:" + path);
HttpSession session = request.getSession();
UserBean userBean = null;
int intFlag =0;
String strUrl = request.getRequestURI().toLowerCase();
int intPos2 = strUrl.indexOf("login.jsf");
if(intPos2<0)
intPos2 = strUrl.indexOf("login.jsp");
if(intPos2<0)
intPos2 = strUrl.indexOf("images/");
if(intPos2<0)
intPos2 = strUrl.indexOf("css/");
if(intPos2<0)
intPos2 = strUrl.indexOf("js/");
if(intPos2<0)
intPos2 = strUrl.indexOf("inc/");
// if(intPos2<0)
// intPos2 = strUrl.indexOf("/system");
// if(intPos2<0)
// intPos2 = strUrl.indexOf("/business");
if (session!=null ) {
userBean = (UserBean) session.getAttribute("userBean");
if (userBean != null && userBean.getUser() != null && userBean.getUser().getName()!=null) {
intFlag = 1;
String actorId = userBean.getUser().getName();
//System.out.println("认证用户的ID" + actorId);
//JbpmContext jbpmContext = JbpmContext.getCurrentJbpmContext();
//if (jbpmContext != null)
// jbpmContext.setActorId(actorId);
}
}
if(intFlag==0)
{
if(intPos2<0 ){
HttpServletResponse response = (HttpServletResponse) servletResponse;
response.sendRedirect(path+"/login.jsf");
}
else
{
filterChain.doFilter(servletRequest, servletResponse);
}
}else
filterChain.doFilter(servletRequest, servletResponse);
}
public void destroy() {
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -