这个是struts的原理之一
controller截获所有的客户请求,然后判断,转发给相应的处理页面截获方式是通过接口代理实现的。

解决方案 »

  1.   

    ??????
    呵呵,STRUTS成黑客软件了。
      

  2.   

    下面是一个简单的例子:
    1.用filter解决汉字编码及禁止页面缓存 (不用再在每个页面里去加那几行代码了):
    package beanservlettest;import javax.servlet.*;
    import javax.servlet.http.*;
    import java.io.*;
    import java.util.*;public class servfilter extends HttpServlet implements Filter {
     private FilterConfig filterConfig;
     //Handle the passed-in FilterConfig
     public void init(FilterConfig filterConfig) {
       this.filterConfig = filterConfig;
     }
     //Process the request/response pair
     public void doFilter(ServletRequest request, ServletResponse response, FilterChain filterChain) {
       try {
             request.setCharacterEncoding("GB2312");//设置编码
             ((HttpServletResponse)response).setHeader("Pragma","No-cache");
             ((HttpServletResponse)response).setHeader("Cache-Control","no-cache");
             ((HttpServletResponse)response).setHeader("Expires","0");//禁止缓存
         //自己添加的代码就这上面四行,其它的都是Jbuilder自动生成的:)
         filterChain.doFilter(request, response);
       }
       catch(ServletException sx) {
         filterConfig.getServletContext().log(sx.getMessage());
       }
       catch(IOException iox) {
         filterConfig.getServletContext().log(iox.getMessage());
       }
     }
     //Clean up resources
     public void destroy() {
     }
    }下面是在web.xml里的配置:
    (我的是Jbuilder自动生成的)
     <filter>
       <filter-name>servfilter</filter-name>
       <filter-class>beanservlettest.servfilter</filter-class>
     </filter>
     <filter-mapping>
       <filter-name>servfilter</filter-name>
       <url-pattern>/*</url-pattern>     ///这里表示对整个网站都有效
     </filter-mapping>
      

  3.   

    to bigc2001(bigc2001):
    这是在服务器端截获,不是在Internet中的某一点上监听用户。
    struts的原理就是这样,你自己去看看资料吧。