Hello.

In my quest to learn more about MMBase, I was reading through the list archives and found a question about WebDAV. I was surprised that most people seem to think that DAV is just another file transfer protocol. It really isn't, and it makes a lot of sense to use it in a dynamic content system like MMBase.

There are two good open source DAV servers available for Java today. There is Jakarta Slide (jakarta.apache.org) and the Resin app server also has a DAV servlet (www.caucho.com). Both of these implementations support the notion of a Virtual File System Layer. It means that files don't have to be stored on disk. They can be stored in memory, in a database or ... in an MMBase object cloud.

So i created a little demo to show what real DAV/MMBase integration means. it is a very simple application that lets anyone upload images (jpg/gif) to a WebDAV server which are then displayed on a JSP page.

The DAV server is at:

http://fw.norad.org:9090/webdav

Only tested with Windows 2000 (My Network Places -> Add network Place).

If you drop an image file in there, it will show up at:

http://fw.norad.org:8080/sateh

Which is a simple JSP that does a:

<table>
<mm:listnodes type="images">
<tr>
<td><img src="<mm:image/>"></td>
<td><mm:field name="title"/></td>
</tr>
</mm:listnodes>
</table>

Nothing fancy :-)

You are welcome to test this setup, but please be gentle, this is running on my Mac OS X Server at home behind ADSL :-)

The DAV server is implemented on top of Resin and uses RMMCI to store and retrieve images. Please note that not all functionality is implemented. it is not possible to delete or rename files for example. or to open them. You can only drop new files on the DAV server for now.

The Resin code is available at:

http://stuff.sateh.com/MyDataSource.java

Quick ugly hack, just to prove that this can work. Excuse me for the code style :-)

Stefan

--
Stefan Arentz - [EMAIL PROTECTED] - +31(0)651197975
Java/J2EE Consultant - Always looking for projects.


Reply via email to