On Fri, Nov 16, 2001 at 08:58:06PM -0800, Dave Jarvis wrote: > Hello, again. > > Neeme Praks wrote: > > Have you ever had a look at Apache Cocoon project? That achieves all the > > Yes. > > > benefits you outlined in your paper plus more. > > Here are a few items BOX addresses that Cocoon does not (as far as I can > discern; please correct my errors): > > o doesn't provide an inherent state-based architecture (it's an aside, > not focus)
Nope, they threw out the "reactor" (state machine) pattern as being too hard to manage. > o doesn't automatically apply a different view of logic based on the > domain Certainly can :) Have a look at Cocoon 2's class org.apache.cocoon.selection.HostSelector. > o extremely complex; it mixes multiple languages and odd syntax (e.g., > &connectDatabase) That's just your particular XSP, which uses an XML entity "&connectDatabase;" to pull in other XSP. If you put your logic in logicsheets as intended, then your XSP pages are pure XML. > o makes it easy to couple presentation and logic (see below) Actually, XSP makes it easy to mix *content* and logic (presentation is in XSLs). > o lacks an integrated expression parser > o doesn't expose a consistent syntax for doing tasks such as: > - file I/O > - sending XML to remote servers Have a look at Cocoon 2's xscript SOAP demo (xscript being an XSP equivalent of James Strachan's xtags taglib). > - calling native code (Java, C, Perl, etc.) > - SQL statements > o cookies, FORM parameters, and URL encoded variables are not treated > uniformly > o doesn't use plain XML (i.e., embeds other language source directly) Anyway, if you've got time, hop on cocoon-dev.. I'm sure there's much mutual learning to be had (it's a fun place to lurk anyway). Cocoon 2 has a very generic architecture, and I've no doubt that your code could be integrated as an XSP alternative. --Jeff --------------------------------------------------------------------- In case of troubles, e-mail: [EMAIL PROTECTED] To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]