Java Webdav Server Library

Supports: Webdav level 2 / CalDav / CardDav

Integrate your java web app with desktop and mobile devices for files, calendars and contacts

Your data could be relational databases, file system, web services or any other data source

Supports Windows, Mac, Linux, Android and iOS devices, and pretty much everything else.


How do i use it?

With annotations...

public List getBands(..) {
    return Band.findAll();

Or with interfaces

class SolarSystem implements CollectionResource {
public List getChildren() {
    files = new ArrayList();
    for( Planet s : getPlanets()){
    return files;


The tutorials are guided, step-by-step instructions with sample code, videos, screen shots and complete projects.

Most people should use the annotations framework tutorials here

Developers who enjoy inflicting pain and suffering on themselves should use the Resource API tutorials here.

Actually the Resource API isnt that bad, but use annotations unless you have a good reason not to.

And for the sake of SEO here are some direct links to the tutorials

Step 1: Hello world - Getting started with the Milton webdav annotations framework
Step 2: Implement webdav file operations with the annotations framework
Step 3: Extensions to build a caldav server


API reference docs and developer guide, see the milton documentation

Read the Manual

Mailing List

The milton mailing list is friendly, helpful and always responsive.

Join the mailing list

License information

Milton has a free, apache licensed, module for basic webdav. And an enterprise edition for advanced webdav capabilities such as Carddav, Caldav and DAV level2+

Read about licensing