具体来说,我想通过HttpClient
致电MKCOL
,通过Sling REST API为Apache Jackrabbit创建一个文件夹。
我尝试了
的变体BasicHttpEntityEnclosingRequest request = new BasicHttpEntityEnclosingRequest("MKCOL", restUrl);
但到目前为止还没有骰子。我猜这不比我做的那么难。
我也看到MkColMethod
有类似
MkColMethod mkColMethod = new MkColMethod(restUrl);
但我不知道如何利用它。我认为它可能适用于以前版本的HttpClient。我正在使用4.x
答案 0 :(得分:5)
最好是查看Sling集成测试,它使用Sling的RESTful API来创建内容。
“旧”SlingIntegrationTestClient类[1]用于测试Sling本身并使用httpclient 3.x创建内容。它被[2]中的测试所使用,所以你可以在那里找到例子。
“新”SlingClient类[3]旨在更简洁,更简单地重新实现,由http://sling.apache.org/site/sling-testing-tools.html中描述的Sling测试工具使用。它使用了httpclient 4.x,它有一个稍微不同的API。
SlingClient.mkdir和mkdirs方法确实使用MKCOL方法。
[2] http://svn.apache.org/repos/asf/sling/trunk/launchpad/integration-tests
答案 1 :(得分:0)
最好的答案是使用沙丁鱼。 http://sardine.googlecode.com/
看一堆单元测试以找出使用webdav的人是荒谬的。