cocoon-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Ard Schrijvers" <>
Subject RE: Cocoon database access strategy
Date Mon, 02 Jul 2007 16:00:38 GMT
If you feel annoyed or irritated, don't, because 
1) I was merely joking
2) I do agree with you to quite some extend
I just wouldn't write one single sql statement, that is all (don't take this one to serious
either :-) )  
Regards Ard

What a great idea - 20 years ago (or even 10) it might have occurred to me! Of course, Cocoon
wasn't even dream't of then. Your tongue-in-cheek joke is much appreciated but it does reflect
the machismo in the industry where guys (and it is invariably young'ish men) who compete to
invent the most involved solution to a simple requirement. Unfortunately, sometimes such heroics,
undermine the efforts of the 'rest of us'. Those who just want to get the job done in the
simplest way in the shortest amount of time with the greatest prospect of some other dumb
schmuck understanding what we did. As I'm sure you recognise, the latter approach is not a
mark of laziness, but a good heuristic to reducing the total cost of corporate software development
over the lifetime of it's use. That's my story and I'm sticking to it! 

On 02/07/07, Ard Schrijvers <> wrote: 

"Calendar generator DOM and for each working day element generate a <sql:query> to determine
whether appointment entries exist in a database for this day" lazy programmer!! :-)

What about implementing your own caldav implementation with cocoon generators and transformers,
add jms listeners, and use update events in combination with an eventcache to invalidate the
correct parts of the calendar frontend. Create caldav connectors to your application to combina
some calendars and import really missed an opportunity here :-) 

Ofcourse, I am not serious: Cocoon is an enormeous toolbox, and there are like hundreds of
ways to achieve the same (though, I really think there are only a few proper ones)


The answet to that one is - it all depends.. on which Application Container, DBMS and JDBC
driver you are using. 

It is good that you have discovered that you can do so much with the SQLTransformer. As you
know, I am very fond of using this component. I have no qualms about generating <sql:query>
elements based upon the shape of the XML DOM. As an example of how shameless I can be, I have
even been known to take the Calendar generator DOM and for each working day element generate
a <sql:query> to determine whether appointment entries exist in a database for this
day. The performance was fine and the solution very comprehensible and easy to extend. Of
course, the purist might cry foul but I see nothing fundamentally wrong with it. I recommend
this as a perfectly acceptable way of using the Cocoon pipeline as the Model which transforms
into the View as it's contents pass through it. The alternative of a stored procedure was
not available and, as you know, I am reluctant to incur the development and maintenance overhead
that some kind of Java object/relation model would require. 

On 02/07/07, Tobia <> wrote:
Andrew Stevens wrote:
> The problem I was replying to has to do with the caching of prepared
> statements within the database connection so that running the same 
> statement with different parameters doesn't need the database server
> to recompile the query each time.  That's what makes it "prepared"
> rather than just a Statement.

By the way, for the sake of completeness, who or what is responsible for 
caching the statements?  The JDBC connector?  The database process?

How does one check that it is actually caching anything, except by crude


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

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

View raw message