cocoon-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Patrick Heiden" <>
Subject Re: Help with Cocoon and Spring
Date Sun, 09 Mar 2008 00:00:49 GMT

> I would like to suggest you two nice readings which could probably help
> you understand better
> Cocoon's architecture and avoid common pitfalls:
> (excellent
> discussion with Rainer Pruy)

Actually I was not able to finish the day before reading the second article!
What I think kicks me further a huge step was your following cite out of that article:

However, in your case the call to A is not about asking a data. In fact, it's delegation of
_control_ because it depends on A block implementation how sequence of browser-server interactions
will look like. In such scenario block M is redundant (as being only dumb proxy) and breaks
cleanness of the design. I think that the best practise is always keep control layer in a
one block,
and it should always be the one handling browser's request directly. I think following such
guarantees clear, easy to maintain code.

I think that this is what you were trying to tell me about seperation of concerns in context
if first implementation-design. My road now looks like that:
Create a global shared block as main controller (e.g. 'containing' the 'facades' of several
sub-modules as accordingly sub-controllers/blocks). From there it is easy and straight forward
to establish connections to other servlets/*blocks* wich enrich the (sub-) controller by their
rendering-pipelines. So what you did by integrating spring into cocoon is to take springs
ability of AOP into the context of servlets (I am aware of the fact that AOP was not introduced
by spring ;). So cocoon 2.2 gives architects/developers the chance of designing their applications
controllers in a cross-cutting-concerns-like way. That means, that it is possible to arrange
web-layer-functionality like (e.g.)
- file uploadings
- form processings
- pdf-creation (view-rendering in general if you want so)
- ..

in a somewhat orthogonal way and use those 'generic' pipelines to process a users request
generating the final response/view.

That is of course only abstract understanding (and hopefully not that far away from the truth)
and I will put those thoughts into action.. tomorrow!

Psst! Geheimtipp: Online Games kostenlos spielen bei den GMX Free Games!

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

View raw message