历史版本3 :11.0集成CAS后的远程设计 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

1. 问题描述编辑

10.0集成 CAS 之后,远程设计的请求会被 CAS 拦截,导致无法进行远程设计。

2. 解决方案编辑

1)需要另外定义个 filter,在请求的一开始就过滤 /remote/design的请求。(这个是远程设计走的请求路径),代码如下:

package com.fr; 
import javax.servlet.*;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
public class RemoteFilter implements Filter {  
 
  public void destroy() {  
    }    
  public void init(FilterConfig filterConfig) throws ServletException {
      }    
  public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain)        
        throws IOException, ServletException {
      HttpServletRequest req = (HttpServletRequest)servletRequest;        
      HttpServletResponse res = (HttpServletResponse)servletResponse;        
      req.getRequestDispatcher(req.getServletPath() + req.getPathInfo()).forward(req, res);  
    }
}

2)web.xml 里相应在所有 filter 的头部加入这个新增的 filter,代码如下:

<filter>     
    <filter-name>RemoteFilter</filter-name>          
    <filter-class>com.fr.RemoteFilter</filter-class>      
 </filter>      
<filter-mapping>          
             <filter-name>RemoteFilter</filter-name>          
             <url-pattern>/decision/remote/design</url-pattern>          
             <url-pattern>/decision/remote/design/*</url-pattern>      
</filter-mapping>

3. 操作方法编辑

1)将编译后的 class 文件放在工程路径webroot\WEB-INF\classes\com\fr下;

2)在 xml 中新增拦截或使用本文提供的附件中的 xml 文件替换;

3)重启工程。

4. 资源下载编辑

点击下载新增拦截和 xml 文件:CAS远程设计.zip