Return-Path: Delivered-To: apmail-cocoon-users-archive@www.apache.org Received: (qmail 80051 invoked from network); 10 May 2004 11:29:40 -0000 Received: from unknown (HELO mail.apache.org) (209.237.227.199) by minotaur-2.apache.org with SMTP; 10 May 2004 11:29:40 -0000 Received: (qmail 27321 invoked by uid 500); 10 May 2004 11:29:46 -0000 Delivered-To: apmail-cocoon-users-archive@cocoon.apache.org Received: (qmail 27172 invoked by uid 500); 10 May 2004 11:29:45 -0000 Mailing-List: contact users-help@cocoon.apache.org; run by ezmlm Precedence: bulk list-help: list-unsubscribe: list-post: Reply-To: users@cocoon.apache.org Delivered-To: mailing list users@cocoon.apache.org Received: (qmail 27146 invoked by uid 98); 10 May 2004 11:29:45 -0000 Received: from DHohls@csir.co.za by hermes.apache.org by uid 82 with qmail-scanner-1.20 (clamuko: 0.70. Clear:RC:0(146.64.10.166):. Processed in 1.762884 secs); 10 May 2004 11:29:45 -0000 X-Qmail-Scanner-Mail-From: DHohls@csir.co.za via hermes.apache.org X-Qmail-Scanner: 1.20 (Clear:RC:0(146.64.10.166):. Processed in 1.762884 secs) Received: from unknown (HELO wabe.csir.co.za) (146.64.10.166) by hermes.apache.org with SMTP; 10 May 2004 11:29:43 -0000 Received: from cs-emo.csir.co.za (cs-emo.csir.co.za [146.64.10.40]) by wabe.csir.co.za (8.12.8/8.12.5) with ESMTP id i4A9DVqs010290 for ; Mon, 10 May 2004 11:13:31 +0200 Received: from GW-EMO-MTA by cs-emo.csir.co.za with Novell_GroupWise; Mon, 10 May 2004 10:53:26 +0200 Message-Id: X-Mailer: Novell GroupWise Internet Agent 6.5.1 Date: Mon, 10 May 2004 10:53:04 +0200 From: "Derek Hohls" To: Subject: MVC Framework - options? Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Content-Disposition: inline X-MailScanner-Information: Please contact sys-admin at csir.co.za for more information X-MailScanner: Found to be clean X-MailScanner-SpamCheck: not spam (whitelisted), SpamAssassin (score=0.8, required 8, SPAM_PHRASE_00_01 0.78) X-MailScanner-From: dhohls@csir.co.za X-Spam-Rating: hermes.apache.org 1.6.2 0/1000/N X-Spam-Rating: minotaur-2.apache.org 1.6.2 0/1000/N After a hint on another thread, I see a possible way fwd for trying to handle cases for complex web applications where the business and data access layers should be kept separate from the overall flow and display of information. It seems like there is a fair amount of controversy / debate on which data persistence layer (O/R mapping) tool to use; both Hibernate and JDO are strong contenders and there are pros and cons to each. Hibernate does seem like a well- established and well-documented OS project, with good community support: Hibernate: http://www.hibernate.org/ The Spring framework was designed in an attempt to make it straightforward to handle business logic in the "M" part of the MVC approach: Spring: http://www.springframework.org/ There a number of articles on using Hibernate and Spring together e.g.: http://hibernate.bluemars.net/110.html http://www-106.ibm.com/developerworks/library/j-hibern/?ca=dnt-515 There is a *very* interesting article on using Hibernate and Spring (together with Struts as the UI) - http://www.onjava.com/pub/a/onjava/2004/04/07/wiringwebapps.html I will quote one paragraph (my emphasis): "This article will discuss how to combine several well-known frameworks to achieve loose coupling, how to structure your architecture, and how to enforce a consistent design across all application layers. The challenge is combining frameworks so that each layer is exposed to each other in a loosely coupled manner, regardless of the underlying technologies. This article will discuss one strategy for combining frameworks using three popular open source frameworks. For the presentation layer we will use Struts; for our business layer we will use Spring; and for our persistence layer we will use Hibernate. You should be able to substitute *any one* of these frameworks in your application and get the same effect. " >From a brief reading of this, it seems that Cocoon could be very easily adapted as the UI, as its presentation capabilities are certainly more powerful than Struts (and arguably flow is currently the most innovative and direct approach to web application control). So - here's the challenge - is there anyone out there with the knowledge and the savvy to take what has been done already (the code from the above article) and adapt it to use with Cocoon as the UI? I don't think it will be that hard and I believe it will be of direct benefit to our community (ito grappling with complex issues) and can also have a positive role in the promotion of Cocoon in related, but perhaps less-informed, open source projects. Any comments and thoughts on this overall approach would be very welcome! Thanks Derek -- This message has been scanned for viruses and dangerous content by MailScanner, and is believed to be clean. MailScanner thanks transtec Computers for their support. --------------------------------------------------------------------- To unsubscribe, e-mail: users-unsubscribe@cocoon.apache.org For additional commands, e-mail: users-help@cocoon.apache.org