[Zope3-dev] Zope 3 web root

Sidnei da Silva sidnei at enfoldsystems.com
Fri Feb 10 07:07:43 EST 2006

On Thu, Feb 09, 2006 at 09:43:30PM -0500, Gary Poster wrote:
| Come to think of it, maybe it would also be an interesting approach  
| to a "baked web site" delivery system.

Indeed, that's an idea. In fact, this is just what we are doing here
at Enfold.

We have created 'Entransit' [1] which receives data from a Zope 2 site
and semi-bakes it to the filesystem. And then this semi-baked data can
be served by any frontend (we've got working frontends in Java, PHP,
ASP.NET and Zope 3).

More specifically, the Zope 3 frontend uses 'zope.paste' to bind
together the Zope 3 WSGI application and a XSLT filter.

To serve content from the filesystem we use a custom Publication
object that returns a different root 'application' object and from
there we use custom IBrowserPublisher and ITraversable adapters that
lookup files on the filesystem and construct simple stub objects to
represent those.

Some advantages are:

a) you can control all aspects of traversal, you're not tied to the
   filesystem hierarchy

b) you work with the stub objects instead of with the files directly
   so it all works just like the object had come from the ZODB (except
   for persistence, the system doesn't write back to the fs)

This Zope 3 frontend might be released soon, even under ZPL if there's

[1] www.enfoldsystems.com/Products/Entransit

Sidnei da Silva
Enfold Systems, LLC.

More information about the Zope3-dev mailing list