[Zope] Re: GoLive and WebDAV
Jeffrey P Shell
jeffrey@Digicool.com
Mon, 02 Apr 2001 11:01:06 -0400
On 4/2/01 6:40 AM, "Paul Everitt" <paul@digicool.com> wrote:
>
> I'm cc'ing in Jeffrey "Mr. GoLive" Shell. Jeffrey, please respond to
> the Zope list with answers to Chris' questions.
>
> Here's my shot, though, on your three points.
>
> 1) Put .html on your Zope ids. But if you're saying that we don't send
> back the content type on the source port, then that's gotta be a bug.
It doesn't. But one of the reasons that it doesn't is that a DTML Method
can actually impersonate a lot of things, just by having the first line
being:
Content-type: application/x-msword
DTML Methods themselves don't know that this is set until render time, so
the content type WebDAV property never quite works with them. I *believe*
ZPT should be architected to handle this issue better, but DTML Methods
never were.
This is the biggest thing though that I'd like to see fixed in the next
GoLive - better content sniffing. I believe it should at least *try* to
open something it doesn't recognize. But then again, if you have the items
'connect' and 'openConnection' in a folder, can you tell which one is a
database connection? I'm guessing that GoLive 5 errs on the side of
conservatism by trying *not* to open unrecognized objects, since WebDAV is
also being used by others as a way of getting data into an object database
and, like in Zope, not everything is easily rendered into something that can
be edited over WebDAV.
> 2) I guess the answer here is the same as (1). I can't think of a
> better solution. Perhaps something like getting the PUT handler to look
> for a meta type? That way you could encode in your documents the
> meta_type you'd like to create. Just seems kludgy though. Hack the PUT
> factory in the folder, and make sure anything you stick in there is
> going to be of the same type (or spend some extra time on the logic).
>
> 3) Doing a "site" means creating a site file on your local box, I
> believe.
>
> Regarding locks...make sure you use the latest-and-greatest in CVS.
> Jeffrey put lock support into the trunk, so it will be there in Zope
> 2.4.
Yep. You'll need the Zope trunk/ Zope 2.4 for this. If you want to make
your own objects lockable, you should read over the document in the
WriteLocking project at dev.zope.og:
http://dev.zope.org/Wikis/DevSite/Projects/WriteLocking/BeingLockable
Jeffrey P Shell, jeffrey@Digicool.com
http://www.digicool.com/ | http://www.zope.org