You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@jackrabbit.apache.org by Darren Hartford <dh...@ghsinc.com> on 2006/07/13 16:08:04 UTC

[jcr-server] webdav basicsearch

Hey all,
Referencing previous e-mails found at
http://comments.gmane.org/gmane.comp.apache.jackrabbit.devel/5639
http://thread.gmane.org/gmane.comp.apache.jackrabbit.devel/6670/focus=66
71
http://thread.gmane.org/gmane.comp.apache.jackrabbit.devel/489/focus=489

The SimpleWebdavServlet doesn't understand the searchmethod (it's more
for fs-based browsing it appears, which is fine), while the
JCRWebdavServer does. However, the JCRWebdavServer doesn't quite yet
have the full DASL searching ready it looks like:

I'm using the jakarta Slide/httpclient java code to connect to the
WebDAV server via
http://localhost:8080/jackrabbit-server/server/default.

When I try to do a DASL search like this:

//I know not all WebDAV servers implement queryschema,
//but the error below didn't even get that far.
String metadata = "<D:searchrequest xmlns:D=\"DAV:\" >" +
"<D:basicsearch>" +
"	<D:select>" +
"		<D:queryschema/>" +
"	</D:select>" +
"<D:from>" +
"           <D:scope>" +
"              <D:href>/</D:href>" +
"               <D:depth>infinity</D:depth>" +
"           </D:scope>" +
"       </D:from>" +
"   </D:basicsearch>" +
"</D:searchrequest>";


I get an error response like this using 
-----------
//Do this instead of normal enumeration when 
//get an http 400 error from jackrabbit-server/server.
Enumeration results = smethod.getResponses();
System.out.println(results.nextElement());
----------
Error:

<D:error xmlns:D="DAV:">
<dcr:exception xmlns:dcr="http://www.day.com/jcr/webdav/1.0">
<dcr:class>javax.jcr.query.InvalidQueryException</dcr:class>
<dcr:message>Unsupported language: basicsearch</dcr:message>
</dcr:exception>
</D:error>

However - on a good note, all my tests with proppatch seem to work
great, just can't test it yet without DASL :-)

-D