> -----Ursprungliche Nachricht-----
> Von: [EMAIL PROTECTED]
> [mailto:[EMAIL PROTECTED] Auftrag
> von Leszek Gawron
> Gesendet: Dienstag, 1. Juni 2004 01:05
> An: [EMAIL PROTECTED]
> Betreff: JXTG and caching
>
>
> While almost everybody buried XSP it has got one great feature that JXTG
> lacks: it's cacheable. I know that there is no way to implement
> automatic JXTG caching but what if I know on what env does jx template
> operate. If I know that it is for example only request param "abc" and
> "bcd" and session attribute "xxx" then I know when I can use cached
> entry. The question is: how?
the automatic caching could be done; collect all references to the template
context and make a ParameterValidity from their names and values.
> Should I extend JXTemplateGenerator so it is a cached component? I
> understand it gets the validity methods to implement then. So every time
> I call my extended component from flow I pass also the validity
> calculated in flow. Something like this:
>
> function niceCachedResponse() {
> var cacheKey = cocoon.request.get( "abc" ) + "!!spacer!!"
> + cocoon.request.get( "bcd" ) + "!!spacer!!"
> + cocoon.session.getAttribute( "xxx" );
> var pageValidity = new DeltaTimeCacheValidity( 60 * 60 * 24 );
> // one day
> cocoon.sendPage( "view/cached.jx", {
> JXTGExtCacheKey: cacheKey,
> JXTGExtpageValidity: pageValidity
> someOtherBizData: data } );
> }
>
> Does it have a chance to work ?
sure, I've already done something similar, but didn't yet implement the
above mentioned parameter stuff.
in the end there should be those two possibilities;
1. set custom cacheability info for the bizdata/model/template context in
the flow/JXTG context
2. have JXTG make a ParameterValidity from the references