第二步 客户端web应用程序集成CAS
1. 从官网下载CAS Client
将客户端的jar,cas-client-core-3.2.1.jar commons-logging-1.1.jar 引入到web应用程序的classpath中
2 .配置web.xml文件,
主要是添加过滤器拦截通信, 下面实例代码, 假设web应用程序的端口是8888
CAS Single Sign Out Filter
org.jasig.cas.client.session.SingleSignOutFilter
CAS Single Sign Out Filter
/*
org.jasig.cas.client.session.SingleSignOutHttpSessionListener
CASFilter
org.jasig.cas.client.authentication.AuthenticationFilter
casServerLoginUrl
http://localhost:8888/cas-server/login
serverName
http://localhost:8888/
CASFilter
/*
CAS Validation Filter
org.jasig.cas.client.validation.Cas20ProxyReceivingTicketValidationFilter
redirectAfterValidation
true
casServerUrlPrefix
http://localhost:8888/cas-server
serverName
http://localhost:8888/
renew
false
gateway
false
CAS Validation Filter
/*
3、启动报错如下
java.lang.RuntimeException: java.io.FileNotFoundException: https://localhost:8443/serviceValidate?ticket=ST-1-1HUXO9iETnaNI2jbuvqK-cas01.example.org&service=http%3A%2F%2Flocalhost%3A8080%2FCasClient%2FIndex.jsp
org.jasig.cas.client.util.CommonUtils.getResponseFromServer(CommonUtils.java:328)
org.jasig.cas.client.util.CommonUtils.getResponseFromServer(CommonUtils.java:291)
org.jasig.cas.client.validation.AbstractCasProtocolUrlBasedTicketValidator.retrieveResponseFromServer(AbstractCasProtocolUrlBasedTicketValidator.java:32)
org.jasig.cas.client.validation.AbstractUrlBasedTicketValidator.validate(AbstractUrlBasedTicketValidator.java:187)
org.jasig.cas.client.validation.AbstractTicketValidationFilter.doFilter(AbstractTicketValidationFilter.java:164)
org.jasig.cas.client.authentication.AuthenticationFilter.doFilter(AuthenticationFilter.java:102)
原因:
![](https://img.laitimes.com/img/__Qf2AjLwojIjJCLyojI0JCLicmbw5yY0UWNhRGZhRTOkVGM3QTYzYDM5UGNxgzYjNWM5UWYy8CX0JXZ252bj91Ztl2Lc52YucWbp5GZzNmLn9Gbi1yZtl2Lc9CX6MHc0RHaiojIsJye.png)
4、测试是否会跳转到cas验证页面,以及登录成功后会不会回到原页面
5、在系统的登出事件中, 将URL访问地址指向CAS服务登出的servlet
http://CAS服务器IP:8080/cas/logout