Hi Stephan Thanks for that reference, that was exactly what I needed. Using cocoon.createObject() I was able to instantiate the component directly from the flowscript and take advantage of the framework connection pooling and lifecycle methods.
Cheers Adam -----Original Message----- From: Stephan Coboos [mailto:[EMAIL PROTECTED] Sent: Sunday, 27 June 2004 8:05 p.m. To: [EMAIL PROTECTED] Subject: Re: Best practice for database access in flow layer Adam Ratcliffe wrote: >I'm looking for a little direction on the most appropriate way to >access a database from the flow layer. My application requires >read-only access to the database only so an O/R type approach would >probably be overkill. > >What I would like to do in the flow layer is something like the >following psuedo code. Do a select query against the database using a >java component. Test the returned collection to see if it contains any >elements and use that test to determine whether redisplay the current >page or to break out of the >recursive loop. > >Any suggestions? > >function searchCategories(locType, class1, class2) { > var categories = Search.searchCategories(locType, class1, class2); > if(categories != null) { > // if search returned categories, search again on expanded >categories > cocoon.sendPageAndWait("page/showCategories.xml", {"categories" >: categories} ); > > // when user request arrives > class1 = cocoon.request.getParameter("class1"); > class2 = cocoon.request.getParameter("class2"); > > // recursively calls itself with > searchCategories(locType, class1, class2); > } >} > > > > Create your own avalon database component. So you can switch the persistence layer like you want. Please have a look at the following link. (It's in german language but the code should help you. Use class "AbstractManagerDB") http://www.pgmtools.de/board/viewtopic.php?t=35 Regards Stephan
