CAS验证成功后不能跳转到登陆成功的主页面

BasicElements 2013-10-29 01:43:31
现在部署了CAS,有一个应用,下载输入应用的URL可以正确跳转到CAS服务的登陆界面,登陆验证通过后页面却跳转到了应用的登陆界面,不能直接进入登陆成功的主页面!
应用的web.xml如下

<!-- 用于单点登录 -->
<filter>
<filter-name>CASFilter</filter-name>
<filter-class>org.jasig.cas.client.authentication.AuthenticationFilter</filter-class>
<init-param>
<param-name>casServerLoginUrl</param-name>
<param-value>https://TP_1010000110011000:8443/cas/login</param-value>
</init-param>
<init-param>
<param-name>serverName</param-name>
<param-value>http://localhost:8080</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>CASFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>

<!-- 该过滤器负责Ticket的校验工作 -->
<filter>
<filter-name>CAS Validation Filter</filter-name>
<filter-class>
org.jasig.cas.client.validation.Cas20ProxyReceivingTicketValidationFilter</filter-class>
<init-param>
<param-name>casServerUrlPrefix</param-name>
<param-value>https://TP_1010000110011000:8443/cas</param-value>
</init-param>
<init-param>
<param-name>serverName</param-name>
<param-value>http://localhost:8080</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>CAS Validation Filter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>

<!-- 该过滤器负责实现HttpServletRequest请求的包裹 -->
<filter>
<filter-name>CAS HttpServletRequest Wrapper Filter</filter-name>
<filter-class>
org.jasig.cas.client.util.HttpServletRequestWrapperFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>CAS HttpServletRequest Wrapper Filter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>

<!--自定义cas设置user过滤器-->
<filter>
<display-name>AutoSetUserAdapterFilter</display-name>
<filter-name>AutoSetUserAdapterFilter</filter-name>
<filter-class>com.cdt.cas.client.casClientFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>AutoSetUserAdapterFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>


casClientFilter的代码如下:

public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse,
FilterChain chain) throws IOException, ServletException {
Date startTime = new Date();
System.out.println("CasClient开始时间"+startTime.getTime());
final HttpServletRequest request = (HttpServletRequest) servletRequest;
final HttpServletResponse response = (HttpServletResponse) servletResponse;
final HttpSession session = request.getSession(false);
final Assertion assertion = (Assertion) (session == null ? request
.getAttribute(AbstractCasFilter.CONST_CAS_ASSERTION) : session
.getAttribute(AbstractCasFilter.CONST_CAS_ASSERTION));
String username = assertion == null ? null : assertion.getPrincipal().getName();
//_const_cas_assertion_是CAS中存放登录用户名的session标志
Object object = request.getSession().getAttribute("_const_cas_assertion_");


String url = request.getRequestURL().toString();


if(object != null && username != null) {

//存放用户类型
session.setAttribute("userType", "2");
//设置cookie
Cookie cookie = new Cookie("username",username);
int maxAge = 60*60*24*365; //cookie存活时间1年
cookie.setMaxAge(maxAge);
response.addCookie(cookie);



}
if (chain != null) {
chain.doFilter(request, response);
}
Date endTime = new Date();
System.out.println("CasClient结束时间"+endTime.getTime());
}




请教各位高手!这个到底怎么弄啊!现在一直跳转到登陆页面!没有进入到登陆成功的页面啊!
...全文
2796 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
x_bingbing 2015-12-22
  • 打赏
  • 举报
回复
咨询下,在cas认证中心登录成功之后,我跳到了应用的 登录界面,这个怎么整,正常应该跳到,登录成功之后的页面啊
小抛 2015-05-16
  • 打赏
  • 举报
回复
我想问一下跳转不成功是怎么解决的,我点击登录之后又经过数据库验证帐号密码,但是点击登录按钮之后总是等很久的加载状态,然后直接显示CAS is Unavailable There was an error trying to complete your request. Please notify your support desk or try again.
BasicElements 2013-10-30
  • 打赏
  • 举报
回复
Ls的问题已经解决!现在都可以正常登陆了 但是为什么我现在部署了两个应用A和B 服务器是这样的CAS服务器和应用A是同一个tomcat,B是不同的服务器 现在输入A的地址能够跳转到CAS登陆页面正常登陆了~但是同一窗口在此输入B地址却又跳转到CAS登陆页面需要重新登陆!这是什么原因啊!求解答!!!!!
ylovep 2013-10-29
  • 打赏
  • 举报
回复
是不是跳转的url不正确 或者新页面所在的项目没启动
BasicElements 2013-10-29
  • 打赏
  • 举报
回复 1
还有~FF浏览器是跳转到应用的登陆页面!IE是直接出来个 “无法显示此页”

67,513

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧