<bean id="auditablePrincipalResolver"
class="org.jasig.cas.audit.spi.TicketOrCredentialPrincipalResolver">
<constructor-arg index="0" ref="ticketRegistry" />
</bean>
I think this component is the culprit, though I can't say why exactly.
Might be helpful to keep source in mind [1] for further discussion.
Your description of the problem and the stack trace indicate that this
is happening on the audit around
CentralAuthenticationServiceImpl#destroyTicketGrantingTicket().
The following code block would be executed in both the success and
failure cases:
final Ticket ticket =
this.ticketRegistry.getTicket((String) arg1);
if (ticket instanceof ServiceTicket) {
final ServiceTicket serviceTicket = (ServiceTicket) ticket;
return
serviceTicket.getGrantingTicket().getAuthentication().getPrincipal().getId();
} else if (ticket instanceof TicketGrantingTicket) {
final TicketGrantingTicket tgt = (TicketGrantingTicket)
ticket;
return tgt.getAuthentication().getPrincipal().getId();
}
Clearly if there were some problem looking up the TGT from the registry,
it would throw in both cases since a principal is needed to log both a
success and failure. From my experience, MemCacheTicketRegistry hardly
ever throws exceptions, so this would be odd, but there is some network
IO going on under the hood, and IO is a common cause of errors. We
could use some more logging here to help diagnose these kinds of errors,
but without source mods there's nothing further you can do to get more
insight into the root cause.
If you're feeling brave, you can check out my modified
MemcachedTicketRegistry component that I'm working to get merged into
master for 3.5:
https://github.com/serac/cas/tree/memcached-ng
As you can see [2], it has the logging you'd need to track down the
specific error you're seeing. I can work with you on a
ticketRegistry.xml if you're interested in trying it out.
M
[1]
https://github.com/Jasig/cas/blob/master/cas-server-core/src/main/java/org/jasig/cas/audit/spi/TicketOrCredentialPrincipalResolver.java
[2]
https://github.com/serac/cas/blob/memcached-ng/cas-server-integration-memcached/src/main/java/org/jasig/cas/ticket/registry/MemcachedTicketRegistry.java
--
You are currently subscribed to [email protected] as:
[email protected]
To unsubscribe, change settings or access archives, see
http://www.ja-sig.org/wiki/display/JSG/cas-user