cocoon-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Martijn C. Vos" <>
Subject RE: Cocoon Productivity
Date Tue, 29 May 2007 09:32:45 GMT
Niels van Kampenhout wrote:
>  But I just have a strong feeling that for someone without years of
>  Cocoon experience it is too easy to screw up.

It depends a lot on what you want to do. Cocoon is brilliant at
simple stuff. My problem when learning Cocoon was that the
documentation on the website discussed XSP, Actions and dozens
of other things that you simply shouldn't use. Cocoon is all
about generator->transformer->serializer, and everything that
fits into that model is easy to learn, once you realise that
this is actually what it's all about.

>  Some people get
>  it, some need a little longer to understand, others possibly 
>  never will. 
>  This is OK I guess. But once they "see it", the difficulties really 
>  start. Where to go from here? How to develop a real, complex 
>  application with Cocoon?

I think the most important thing to realise about Cocoon is that
it's a framework of Java components. Cocoon is great at the simple
generator/aggregator->transformer->serializer pipeline, but I
think all the really complex stuff should be done in Java components
as much as possible. In too many projects I've seen people trying to 
do complex stuff in XSLT, or using flowscript to do all the stuff
that the pipeline can't. The problem is that while flowscript is
very powerful, it doesn't quite fit in the pipeline way of working,
and that makes lots of things more complex than they should be.

>  Of course all the software engineering principles apply as much to
>  Cocoon applications as to any other, but most people find it 
>  difficult
>  to abstract away from the "traditional" frameworks for which they
>  learned their patterns, and apply their knowledge to Cocoon. 
>  And that's
>  no surprise, because Cocoon is so big, you can do so much 
>  with it, and you can do it in so many ways.

And many of those ways are IMO too complex and too inefficient. I
think the basic pipeline is really easy to understand, as are the
basics of how XSLT should be used (i.e: not for logic and
calculations, but only for changing the structure of the XML).
Everything more complex than that should be done in Java, which
immediately makes more use of "traditional" programming experience.


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

View raw message