[...]

> I would like to suggest you two nice readings which could probably help
> you understand better
> Cocoon's architecture and avoid common pitfalls:
> http://article.gmane.org/gmane.text.xml.cocoon.devel/74571
> http://thread.gmane.org/gmane.text.xml.cocoon.user/63219 (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 the
_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 rule
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!

Patrick
-- 
Psst! Geheimtipp: Online Games kostenlos spielen bei den GMX Free Games! 
http://games.entertainment.gmx.net/de/entertainment/games/free

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to