[Logo] Terracotta Discussion Forums (LEGACY READ-ONLY ARCHIVE)
  [Search] Search   [Recent Topics] Recent Topics   [Members]  Member Listing   [Groups] Back to home page 
[Register] Register / 
[Login] Login 
[Expert]
Messages posted by: dhmayo  XML
Profile for dhmayo -> Messages posted by dhmayo [4]
Author Message
Thanks so much for the quick reply!
I've been looking at the Web Sessions installation instructions, which say:

"All clustered objects must be serializable. If you cannot use Serializable classes, you must use the custom web-sessions installation (see Terracotta DSO Installation). Clustering non-serializable classes is not supported with the express installation."

I've been writing some static analysis (i.e. reflection-based) tools to go through our code and look for non-Sessionable types that could get put into session. While these tools are catching a lot of potential problems, they don't give me 100% confidence -- Java type erasure and the runtime idiosyncrasies of generics mean that non-Serializable objects could still sneak into session.

My questions are:

1. Is going with DSO something that we should consider?
2. Given that we will definitely be using EhCache and Quartz (and may very well use BigMemory was well), are there any cons to using DSO?
3. The fact that the TC site draws a distinction between a *custom* web sessions installation for DSO vs. the express installation leads me to believe that the operational impact would be greater with a DSO-based approach. Is that the case?

Any input would be most appreciated. Thanks!
It looks like I can accomplish what I need by having certain of my classes implement the magic writeReplace() and readResolve() methods. Can you please confirm that your custom serialization classes will indeed invoke those methods?

Thanks!
I'm experimenting with using TC for Web Sessions on Tomcat 6. I would like to use custom ObjectOutputStream/ObjectInputStream implementations, which override ReplaceObject/ResolveObject in order to do some object substitutions.

Is there a way to instruct Terracotta to use my custom classes instead of the standard ones when performing session serialization/deserialization? If possible, I would expect this to be specified via declarative TerracottaTomcat60xSessionValve settings in context.xml. Unfortunately, I can't seem to find any documentation to this effect, including API doc on that valve class.

Does anyone know if this is possible? I sure hope so.

Thanks!
 
Profile for dhmayo -> Messages posted by dhmayo [4]
Go to:   
Powered by JForum 2.1.7 © JForum Team