Is the workpsaces/workspaces typo below significant? On Jan 16, 2010, at 9:39 AM, Fabian Mandelbaum <[email protected]> wrote:
> Hum... one more thing I've found out while testing, I've removed > OPTIONS support from the RootFolderResource (serving the / URI) and > now the error is different: > > [fab...@laptop ~]$ cadaver http://localhost:9000/workpsaces/W1/content > Could not open collection: > 405 The method specified in the request is not allowed for the > resource identified by the request URI > dav:/workpsaces/W1/content/? quit > [fab...@laptop ~]$ > > So, I'm wondering... maybe the problem is that all 'intermediate' > resources should implement at least the OPTIONS method too in order > for the 'deeper' resource to work? > > Thanks again... > > 2010/1/16 Fabián Mandelbaum <[email protected]>: >> Thanks Rob (and sorry for miswritting your lastname ;)). >> >> For all it's worth I've just tried with cadaver (DAV command line >> client), and got the same results, CLI 'session' and excerpt from the >> logs follow: >> >> [fab...@laptop ~]$ cadaver http://localhost:9000/workpsaces/W1/ >> content >> Could not access /workpsaces/W1/content/ (not WebDAV-enabled?): >> 405 The method specified in the request is not allowed for the >> resource identified by the request URI >> Connection to `localhost' closed. >> dav:!> quit >> [fab...@laptop ~]$ >> >> Jan 16, 2010 12:06:26 PM com.calenco.resource.RootFolderResource >> options >> INFO: OPTIONS request processed in 0.000 sec. >> Jan 16, 2010 12:06:26 PM org.restlet.engine.log.LogFilter afterHandle >> INFO: 2010-01-16 12:06:26 0:0:0:0:0:0:0:1 - >> - 9000 OPTIONS /workpsaces/W1/content/ - 200 >> 0 - 8 http://localhost:9000 cadaver/0.23.2 >> neon/0.29.0 - >> Jan 16, 2010 12:06:26 PM org.restlet.engine.http.HttpServerAdapter >> commit >> WARNING: A response with an unavailable entity was returned. Ignoring >> the entity for resource >> "http://localhost:9000/workpsaces/W1/content/". >> Jan 16, 2010 12:06:26 PM org.restlet.engine.log.LogFilter afterHandle >> INFO: 2010-01-16 12:06:26 0:0:0:0:0:0:0:1 - >> - 9000 PROPFIND /workpsaces/W1/content/ - >> 405 402 288 7 http://localhost:9000 cadaver/ >> 0.23.2 >> neon/0.29.0 - >> >> Thanks in advance >> >> On Sat, Jan 16, 2010 at 11:00 AM, Rob Heittman >> <[email protected]> wrote: >>> I ran into similar trouble porting it myself, but that was many >>> milestones ago ... Will retry with M6 and see if I get the same >>> results as you! >>> >>> On Jan 16, 2010, at 8:17 AM, Fabian Mandelbaum <[email protected] >>> > >>> wrote: >>> >>>> Hello there, I'm trying (fighting and learning, bah ;)) to add >>>> WebDAV >>>> support to a ServerResource. To test, I'm using the Nautilus/GNOME >>>> "Connect to Server" WebDAV client. I've seen that 1st an OPTIONS >>>> (HTTP) request is issued, then a PROPFIND (DAV) request is issued. >>>> >>>> My resource has options() overriden and it's being called properly; >>>> however, there's no propfind() method in ServerResource, so reading >>>> the docs a bit I've found that to implement handlers for 'new' >>>> methods >>>> (or for not-yet-handled-by-any-out-of-the-box-handler method), >>>> simply >>>> a handleMethodName() is needed, so I've added handlePropfind() to >>>> my >>>> resource, like this: >>>> >>>> public Representation handlePropfind() throws ResourceException { >>>> return new StringRepresentation("PROPFIND called!"); >>>> } >>>> >>>> And I'm seeing this on the logs (together with the error message of >>>> the DAV client stating "the method is not supported by the >>>> requested >>>> resource URI", without saying *which* method is not supported, >>>> but I >>>> know it's PROPFIND, from the logs): >>>> >>>> Jan 16, 2010 11:08:31 AM org.restlet.engine.log.LogFilter >>>> afterHandle >>>> INFO: 2010-01-16 11:08:31 0:0:0:0:0:0:0:1 - - 9000 >>>> OPTIONS /workspaces/W1/content - 200 0 - 207 >>>> http://localhost:9000 >>>> gvfs/1.4.3 - >>>> Jan 16, 2010 11:08:31 AM org.restlet.engine.http.HttpServerAdapter >>>> commit >>>> WARNING: A response with an unavailable entity was returned. >>>> Ignoring >>>> the entity for resource "http://localhost:9000/workspaces/W1/content >>>> ". >>>> Jan 16, 2010 11:08:31 AM org.restlet.engine.log.LogFilter >>>> afterHandle >>>> INFO: 2010-01-16 11:08:31 0:0:0:0:0:0:0:1 - - 9000 >>>> PROPFIND /workspaces/W1/content - 405 402 124 >>>> 14 http://localhost:9000 gvfs/1.4.3 - >>>> Jan 16, 2010 11:08:31 AM org.restlet.engine.log.LogFilter >>>> afterHandle >>>> >>>> So, the OPTIONS request is succeeding, but the PROPFIND one is not, >>>> even if there is a handlePropfind() in the resource. >>>> >>>> Restlet 2.0M6 here, and my work on DAV support is being based on >>>> Rob >>>> Heitman's Dav1VFSResource class, which seems to be the only >>>> 'documented' stuff about how DAV clients work. >>>> >>>> Thanks in advance for your help >>>> >>>> -- >>>> Fabián Mandelbaum >>>> IS Engineer >>>> >>>> ------------------------------------------------------ >>>> http://restlet.tigris.org/ds/viewMessage.do?dsForumId=4447&dsMessageId=2437628 >>> >>> ------------------------------------------------------ >>> http://restlet.tigris.org/ds/viewMessage.do?dsForumId=4447&dsMessageId=2437629 >>> >> >> >> >> -- >> Fabián Mandelbaum >> IS Engineer >> > > > > -- > Fabián Mandelbaum > IS Engineer > > ------------------------------------------------------ > http://restlet.tigris.org/ds/viewMessage.do?dsForumId=4447&dsMessageId=2437639 ------------------------------------------------------ http://restlet.tigris.org/ds/viewMessage.do?dsForumId=4447&dsMessageId=2437640

