cocoon-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Paul Hammant <>
Subject Re: [RT] Cocoon as OS
Date Sun, 03 Feb 2002 22:12:06 GMT

>>I am primarily proposing that we decouple the Cocoon concepts from the
>>servlet API.  We make the usable outside a servlet context.  We do
>>provide a number of ways of wrapping Cocoon as a servlet, but generalize
>>the real APIs
>Interesting enough, Paul, this is already here :)
>The abstraction over the Servlet API was designed *explicitly* to allow
>CLI *and* Mailet interface for Cocoon. Take a look at the CocoonServlet
>code to know what I mean.
So CocoonServlet would be inspiration for the Phoenix block.

>It just hasn't been implemented, but Cocoon already is completely
>decoupled from the Servlet API (and making a Cocoon block is entirely
>possible... even if the behavioral interface will be very complex since
>it has to expose the Cocoon Environment Object model)

>if you want to implement what you said, be our guest :) we don't require
>*any* change whatsoever (at least, that I know of)
Well I can do it.  However I suspect there are committers here who are 
Phoenix experts and Cocoon savvy.  If none of them step forward (cough 
Gerhard cough) then I'll do it.  You'll have to add me as a committer 
and I'll promise to tread ultra carefully in your CVS.

There are some other things that need to be ticked off.  Most 
significant of which is separation of interface and impl.  This is not 
just a package issue it is a jar issue.  JAMES (our hypothetical case) 
would want to compile against your interfaces, without needing the whole 
impl in their CVS.  In some months time Peter Donald (fingers crossed) 
will be able to separate the classloaders for SAR apps and still allow 
them to share services.  We can express this simply by viewing the 
classloader tree as :

    (as before)
       |                                       Cocoon Engine
   WebServer         JAMES                     Incl all impl jars
       |               |                              |
              Phoenix + Cocoon interfaces jar

Actually it would probably be something like (but harder to understand 
and code*)

    (as before)
       |                                       Cocoon Engine, interfaces
   WebServer   JAMES + Cocoon interfaces jar     and impl jars
       |         |                                    |

So, in summary, I'll do the code if nobody else steps up, and check my 
facts re separation.


- Paul H

* unless using AltRMI.

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

View raw message