[Phoenix] Yanel sitetree and upload support

Michael Wechner michael.wechner at wyona.com
Wed Oct 11 22:54:19 CEST 2006


Andreas Wuest wrote:

> Hi
>
> On 11.10.2006 22:19 Uhr, Michael Wechner wrote:
>
>> Andreas Wuest wrote:
>>
>>> Hi
>>>
>>> On 10.10.2006 22:01 Uhr, Andreas Wuest wrote:
>>>
>>>> Hi
>>>>
>>>> I am currently implementing document upload, but I am struggling 
>>>> with the fact that Yanel is not able to serve correct WebDAV 
>>>> collections for the sitetree, and is not able to acknowledge upload 
>>>> requests.
>>>>
>>>> We can currently only request sitetree.xml, which is served as a 
>>>> WebDAV collection. Apparently, this should also be served if 
>>>> requested like foo.org/sitetree.xml/. Furthermore, anything deeper 
>>>> than sitetree.xml cannot be requested, i.e. Yulup can only see the 
>>>> top-level.
>>>>
>>>> Furhtermore, uploading is not possible.
>>>>
>>>> It is not that funny to implement client side functionality without 
>>>> actually being able to test it... It would be cool if one of you 
>>>> could implement proper WebDAV support in Yanel, so I can futher the 
>>>> client.
>>>
>>>
>>>
>>> To elaborate a little, what we need is PUT for non-collection 
>>> resources,
>>
>>
>>
>> I guess you mean to create new resources, right?
>
>
> Exactly.


I have started it at

           } else {
                log.debug("TODO: WebDAV PUT ...");
            }

            getContent(request, response);
        }
    }
                                                                                       
454,34

within

src/core/java/org/wyona/yanel/servlet/YanelServlet.java

>
>> This could be
>>
>>> and GET on collection resources.
>>
>>
>> how can we differentiate between a regular GET request and a WebDAV 
>> GET request?
>
>
> You can't.
>
> But on second thought, I wonder why Gregor implemented this as a GET 
> request. IIU the WebDAV specification C, then we would have to do a 
> PROPFIND on collections to get a member listing.


I think Firefox does not support PROPFIND

>
> I guess you can forget the GET then, and simply implement PROPFIND on 
> collections.
>
>> Or would be sufficient to set the .yanel-rti accordingly with the 
>> Yanel WebDAV resource?
>
>
> Yanel has to have an inherent knowledge about what collections are. If 
> one is retrieved via PROPFIND (attention, a collection can be 
> retrieved using either http://foo.org/bar or http://foo.org/bar/), 
> then it has to return a listing of its members.


well, that shouldn't be a problem, but I need to take a closer look

>
> I don't know how the PUT should work out an the Yanel side, but it 
> should somehow save the sent content to the requested URI.


the question for Yanel is what resource type it should use, whereas for 
the moment it could fallback to for instance the "file" resource type

> There are some pitfalls as well though: if I PUT to 
> http://foo.org/bar/duck/page.html, and only http://foo.org/bar/ exists 
> but not intermediate "duck" collection, then you have to return some 
> special WebDAV status code.


what status code would that be?

Thanks

Michi


-- 
Michael Wechner
Wyona      -   Open Source Content Management   -    Apache Lenya
http://www.wyona.com                      http://lenya.apache.org
michael.wechner at wyona.com                        michi at apache.org
+41 44 272 91 61




More information about the Phoenix mailing list