CAS Client Filter - how to handle ticket validation exception

Matteo Matteo matteo at inbox.ru
Wed Jul 2 03:53:47 EDT 2008


Cas client 2.1.0 from yale.
The problem is that if you session has timed out and you press F5 for page reloading, than if there's the ticket parameter in request - you'll get an InternalError Exception caused by ticket validation.
The question is - what is the best solution for exception handling in this case and further redirect to CAS Server for authorization?
Thanks


javax.servlet.ServletException: Unable to validate ProxyTicketValidator [[edu.yale.its.tp.cas.client.ProxyTicketValidator proxyList=[null] [edu.yale.its.tp.cas.client.ServiceTicketValidator casValidateUrl=[https://casintern.local.company.de:8443/cs/proxyValidate] ticket=[234sd82378] service=[http%3A%2F%2Fexport4.company.com%2Fwdata%2Findex.jsp%3Fm%3D0] errorCode=[INVALID_TICKET] errorMessage=[Ticket '234sd82378' wurde nicht anerkannt] renew=false entireResponse=[<cas:serviceResponse xmlns:cas='http://www.yale.edu/tp/cas'>
	<cas:authenticationFailure code='INVALID_TICKET'>
		Ticket '234sd82378' wurde nicht anerkannt
	</cas:authenticationFailure>
</cas:serviceResponse>
]]]]
	edu.yale.its.tp.cas.client.filter.CASFilter.doFilter(CASFilter.java:382)


root cause 

edu.yale.its.tp.cas.client.CASAuthenticationException: Unable to validate ProxyTicketValidator [[edu.yale.its.tp.cas.client.ProxyTicketValidator proxyList=[null] [edu.yale.its.tp.cas.client.ServiceTicketValidator casValidateUrl=[https://casintern.local.company.de:8443/cs/proxyValidate] ticket=[234sd82378] service=[http%3A%2F%2Fexport.company.com%2Fwdata%2Findex.jsp%3Fm%3D0] errorCode=[INVALID_TICKET] errorMessage=[Ticket '234sd82378' wurde nicht anerkannt] renew=false entireResponse=[<cas:serviceResponse xmlns:cas='http://www.yale.edu/tp/cas'>
	<cas:authenticationFailure code='INVALID_TICKET'>
		Ticket '234sd82378' wurde nicht anerkannt
	</cas:authenticationFailure>
</cas:serviceResponse>
]]]]
	edu.yale.its.tp.cas.client.CASReceipt.getReceipt(CASReceipt.java:62)
	edu.yale.its.tp.cas.client.filter.CASFilter.getAuthenticatedUser(CASFilter.java:458)
	edu.yale.its.tp.cas.client.filter.CASFilter.doFilter(CASFilter.java:379)





More information about the cas mailing list