cocoon-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Gianugo Rabellino" <>
Subject Re: RT - Tree Traversal Implementation of Sitemaps and XSP
Date Sat, 06 Oct 2001 22:53:18 GMT
Boy, I wish I had some time to jump in the great topics that are being
discussed on the list lately. I hope to come up with some points in the
next week: meanwhile I'd just like to clarify a side point:

> > There has been recently some long threads about alternatives to XSP,
> > mostly based on introspection transformers (see also x:forge at
> > Those may be easier to use than XSP (I wish
> > had a #LINE directive like good old C compilers to set line numbers
> > the generated class files !), but could hardly be as fast because of
> > use of introspection.

Sylvain, first of all thanks a lot for the plug. :) I just wanted to
point out that X:Forge is not at all based on introspection. It's a pure
component based approach where, of course, you are free to use
introspection if you want to do so in your components, but the framework
is based on pure Avalon concepts.

I consider X:Forge a good attempt at component based dynamic XML
generation yet I admit that the approach (and the implementation) can be
improved a lot. Unfortunately Bibop reconsidered its position and
strategy lately, with many good programmers being laid off, so I
wouldn't expect any follow up on this particular product (but yes, there
will be good news on the dynamic XML generation field sooner or later,
I'm not going to give up... :)).

As of now, though, X:Forge it's there, it works and, in our tests, it
outperformed XSP many time, even by an order of magnitude for things
such as request/session analysis and complex DB queries. But most of all
(and don't ask me why) it seems to scale much better under load (keep in
mind though that our tests, at the time the software was written, were
run against Cocoon 1, even if X:Forge is totally based on SAX).

This is just a "real life" example in favor of components versus code
generation. :)


Gianugo Rabellino

To unsubscribe, e-mail:
For additional commands, email:

View raw message