What is it?
Berry integrates Milton's webdav processing with small, embeddable, non servlet api http servers.
It gives you a very small, very fast, and very simple webdav server.
Berry also includes a java reverse proxy for load balancing and high availability called BerryHA. It can be statically configured, or cluster members can be determined dynamically through JGroups or direct TCP connections, so works well in EC2.
BerryHA can proxy any web server, and dynamic membership is available for java based web apps through instantiating a bean.
Whats it good for?
Berry was intended as a small, embeddable and wedav enabled web server. But the reverse proxy feature is probably what you're interested in.
How do i use it?
You need to implement milton's resource API to enable webdav operations such as browsing and uploading. Then configure your implementation into Berry using either spring configuration, or directly instantiating the Berry server from your code.
Or
You can use the off-the-shelf file system resource implementation, if you just want a plain old file server via webdav.
Spring Configuration
See spring configuration example here
Create Berry programatically
ResourceFactory resourceFactory = new TestResourceFactory();
HttpManager httpManager = new HttpManager( resourceFactory );
List
httpAdapters.add( new XLightWebAdapter( 80));
Berry berry = new Berry( httpManager, httpAdapters );
berry.stop();
Runnable Demo
Checkout http://svn.ettrema.com/svn/berry2/trunk/examples/berry-example-console-app