cocoon-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Unico Hommes <>
Subject Re: XSP not working in CVS head?
Date Mon, 17 May 2004 14:00:29 GMT
Sylvain Wallez <sylvain <at>> writes:

> !!!!! A LogicSheet cannot be Serializable !!!!!
> It extends AbstractLogEnabled and has attributes of type ServiceManager 
> and SourceResolver, which aren't serializable !
> Furthermore, I don't understand why LogicSheets go to JCS since the 
> transient store is used (see AbstractMarkupLanguage.service())

JCS store integration is accomplished through three components, following the
current design of a DefaultStore, TransientStore and PersistentStore. 
JCS is NOT a persistence engine. It's a caching system. Hence there is some
fricsion between the Store concept and JCS (eg. JCS will always use a memory
store upfront). 

The way I've implemented it is that each of the three concrete implementations
loads JCS using a template configuration geared towards that component's special
role (transient, persistent, transient+persistent ie default). And then allowed
for some specific configuration tweaking.

> Don't have much time ATM, but looking at the recent changes I see a 
> JCSTransientCache. We must be *very careful* with transient cache being 
> actually transient, i.e. *not requiring objects to be serializable*.
> If JCS requires objects to be serializable even without a persistent 
> backend, so let's *not use it* for the transient cache, and keep the 
> previous MRU memory store.
> And please, please, do not make Serializable objects that intrinsically 
> are not. This is the root of many evils.

Chill out dude. You don't have to be overly emphatic about it to get your point
across I've already rolled back the changes.


View raw message