I discovered what was causing the issue I described previously. I had the long term / remember me authentication enabled, and that caused objects of the class Authentication to be non serializable.
I changed the objects in TicketGrantingTicketImpl.java to transient one at a time to figure out the base problem was in objects of type Authentication. Then I actually had an intuitive leap that the issue was the long term / remember authentication I had enabled. I removed it, and then ehcache replicated with JGroups. I didn't dive into the code deep enough to say exactly what caused the problem. If I have time I'll try to trace the exact problem and let you know. For now, just note that as of RC3 of CAS4 replicated ehcache using JGroups for communication does not work with long term / remember authentication enabled. Thanks, Nancy --------------------------------------------------------------------------- 2014-03-12 20:06 GMT+01:00 Nancy Snoke <[email protected]<mailto:[email protected]>>: Hi all, I am testing out the CAS4-RC3 and was setting up replicated caching. I have set this up in two different ways one using Ehcache with JGroups communication. The other just using a JBoss Cache. Both are using TCP for communications due to the servers being in different subnets. In both cases I get a not serializable exception caused by a HashMap Keyset. In the ehcache version the exception occurs at line 85 of cas<https://github.com/Jasig/cas/tree/ce14f00dacea2c90edd5a90c38750ea1f8e9f750>/cas-server-integration-ehcache<https://github.com/Jasig/cas/tree/ce14f00dacea2c90edd5a90c38750ea1f8e9f750/cas-server-integration-ehcache>/src<https://github.com/Jasig/cas/tree/ce14f00dacea2c90edd5a90c38750ea1f8e9f750/cas-server-integration-ehcache/src> /main<https://github.com/Jasig/cas/tree/ce14f00dacea2c90edd5a90c38750ea1f8e9f750/cas-server-integration-ehcache/src/main> /java<https://github.com/Jasig/cas/tree/ce14f00dacea2c90edd5a90c38750ea1f8e9f750/cas-server-integration-ehcache/src/main/java> /org<https://github.com/Jasig/cas/tree/ce14f00dacea2c90edd5a90c38750ea1f8e9f750/cas-server-integration-ehcache/src/main/java/org>/jasig<https://github.com/Jasig/cas/tree/ce14f00dacea2c90edd5a90c38750ea1f8e9f750/cas-server-integration-ehcache/src/main/java/org/jasig>/cas<https://github.com/Jasig/cas/tree/ce14f00dacea2c90edd5a90c38750ea1f8e9f750/cas-server-integration-ehcache/src/main/java/org/jasig/cas>/ticket<https://github.com/Jasig/cas/tree/ce14f00dacea2c90edd5a90c38750ea1f8e9f750/cas-server-integration-ehcache/src/main/java/org/jasig/cas/ticket>/registry<https://github.com/Jasig/cas/tree/ce14f00dacea2c90edd5a90c38750ea1f8e9f750/cas-server-integration-ehcache/src/main/java/org/jasig/cas/ticket/registry>/EhCacheTicketRegistry.java. In the JBoss implementation the error occurs on line 64 of cas<https://github.com/Jasig/cas/tree/ce14f00dacea2c90edd5a90c38750ea1f8e9f750>/cas-server-integration-jboss<https://github.com/Jasig/cas/tree/ce14f00dacea2c90edd5a90c38750ea1f8e9f750/cas-server-integration-jboss>/src<https://github.com/Jasig/cas/tree/ce14f00dacea2c90edd5a90c38750ea1f8e9f750/cas-server-integration-jboss/src>/main<https://github.com/Jasig/cas/tree/ce14f00dacea2c90edd5a90c38750ea1f8e9f750/cas-server-integration-jboss/src/main>/java<https://github.com/Jasig/cas/tree/ce14f00dacea2c90edd5a90c38750ea1f8e9f750/cas-server-integration-jboss/src/main/java>/org<https://github.com/Jasig/cas/tree/ce14f00dacea2c90edd5a90c38750ea1f8e9f750/cas-server-integration-jboss/src/main/java/org>/jasig<https://github.com/Jasig/cas/tree/ce14f00dacea2c90edd5a90c38750ea1f8e9f750/cas-server-integration-jboss/src/main/java/org/jasig>/cas<https://github.com/Jasig/cas/tree/ce14f00dacea2c90edd5a90c38750ea1f8e9f750/cas-server-integration-jboss/src/main/java/org/jasig/cas>/ticket<https://github.com/Jasig/cas/tree/ce14f00dacea2c90edd5a90c38750ea1f8e9f750/cas-server-integration-jboss/src/main/java/org/jasig/cas/ticket>/registry<https://github.com/Jasig/cas/tree/ce14f00dacea2c90edd5a90c38750ea1f8e9f750/cas-server-integration-jboss/src/main/java/org/jasig/cas/ticket/registry>/JBossCacheTicketRegistry.java. The Ehcache version will log in correctly and just not replicate the tickets, whereas the JBoss version results in "Access Denied". It looks like there is something in the ticketGrantingTicket that is not serializable. I have started to dig into the code and don't mind doing so, but thought I verify that this wasn't a known issue or hasn't been already fixed for the next release before spending a lot of time. Any thoughts or helpful comments? Thanks, Nancy -- 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-dev
