Hello devs,
Following couple of weeks i've been working on integrating xwiki-webdav in
the xwiki ui and i'm confident now it's time to move out this effort from
sandbox to our main xwiki source tree. Before discussing about where to put
the xwiki-webdav and associated modules in the main source tree, following
is a brief status update on what's going with xwiki-webdav.
* xwiki-webdav can be deployed on it's own (with a preconfigured hsqldb) or
more likely be integrated into an existing XE installation. Once deployed,
various webdav clients (provided by your operating system or thirdparty
applications) will be able to brows through an XE repository pretty easily.
- It's worth to mention at this point that there are so many webdav
clients out there and they vary in bahaviour a lot. This is the MOST-PAINFUL
problem we're currently facing. And to get xwiki-webdav into shape, we need
to test it a LOT! :)
* xwiki-webdav is configured as a maven project (
http://svn.xwiki.org/svnroot/xwiki/sandbox/xwiki-webdav/) and it can be
deployed (for testing) pretty easily through maven-jetty-plugin. Also we
have added quite a few integration tests to make sure of the basic dav
functionality.
* For interoperability with XP's built-in webdav client we had to put up a
separate root servlet, this project is currently located at
http://svn.xwiki.org/svnroot/xwiki/sandbox/xwiki-rootwebapp/.
xwiki-rootwebapp handles redirection and proper reply for the PROPFIND
request at root level of webserver.
* xwiki-webdav is integrated into xwiki ui with two approaches, one by
provding an 'Edit' link in the attachments view of a page (for editing
attachments via webdav) and the other is thorugh foxwiki's context menu.
* To implement the 'Edit' link in the attachments view, we created the
xwiki-webdav-plugin (
http://svn.xwiki.org/svnroot/xwiki/sandbox/xwiki-webdav-plugin/) which is
responsible for providing webdav urls given document attachments. The actual
editing of attachments is carried either via foxwiki (if you are running
firefox) or via IE's built-in capabilities of openning webdav urls with
native editors.
* As mentioned above we had to revamp foxwiki to make it easy for us to
integrate xwiki-webdav in the xwiki-ui. But we have the added bonus of all
previous foxwiki features too :). Presently foxwiki is configured as a maven
project (
http://svn.xwiki.org/svnroot/xwiki/sandbox/xwiki-clients/FoXWiki/)
and it can be built and tested pretty easily (refer to README).
* A fully configured test server is located at
http://91.121.237.216/xwiki/bin/view/Main/ (along with instructions) so that
you may test out xwiki-webdav:xwiki-ui integration yourself :)
* So altogether we have 4 projects
[xwiki-rootwebapp],[xwiki-webdav],[xwiki-webdav-plugin],[foxwiki] and
follwing is our task break down for days to come :
1. Cleanup the source code and make it upto xwiki standards (2 more days
work remaining, need to add javadoc comments).
2. Create a maven build (Done).
3. Discuss proper places to land these projects (on trunk).
4. Send a vote to move these projects into trunk.
5. Create JIRA projects as necessary. (i'm not sure if we would have
four separate projects or not)
6. Release a first version.
* Now to start with, we need to discuss where to place these projects under
the main source tree, following are some initial suggessions but i'm not
certain about these :)
[xwiki-rootwebapp] : No Idea.
[xwiki-webdav] :
http://svn.xwiki.org/svnroot/xwiki/platform/core/trunk/xwiki-webdav
[xwiki-webdav-plugin] :
http://svn.xwiki.org/svnroot/xwiki/platform/xwiki-plugins/trunk/xwiki-webda…
be we should change the name ?)
[foxwiki] :
http://svn.xwiki.org/svnroot/xwiki/foxwiki
WDYT ?
- Asiri