1700484570
}
1700484571
1700484572
//过滤器必须实现的方法
1700484573
1700484574
public void doFilter(ServletRequest request,ServletResponse response,
1700484575
1700484576
FilterChain chain)throws IOException,ServletException{
1700484577
1700484578
//转换为HttpServletRequest
1700484579
1700484580
HttpServletRequest req=(HttpServletRequest)request;
1700484581
1700484582
HttpServletResponse res=(HttpServletResponse)response;
1700484583
1700484584
//传递到其他过滤器处理
1700484585
1700484586
chain.doFilter(req,res);
1700484587
1700484588
//获得从HTTP请求的ACTION名称
1700484589
1700484590
String actionName=getActionNameFromURI(req);
1700484591
1700484592
//对ViewManager的应用
1700484593
1700484594
ViewManager viewManager=new ViewManager(actionName);
1700484595
1700484596
//所有参数放入值栈
1700484597
1700484598
ValueStack valueStack=valueStackHelper.putIntoStack(req);
1700484599
1700484600
//把所有的请求传递给ActionDispatcher处理
1700484601
1700484602
String result=actionDispatcher.actionInvoke(actionName);
1700484603
1700484604
String viewPath=viewManager.getViewPath(result);
1700484605
1700484606
//直接转向
1700484607
1700484608
RequestDispatcher rd=req.getRequestDispatcher(viewPath);
1700484609
1700484610
rd.forward(req,res);
1700484611
1700484612
}
1700484613
1700484614
public void init(FilterConfig arg0)throws ServletException{
1700484615
1700484616
/*
1700484617
1700484618
*1、检查XML配置文件是否正确
1700484619
[
上一页 ]
[ :1.70048457e+09 ]
[
下一页 ]