1

使用 tomcat webdav,目前我能够将文件/文档上传到特定的 webdav 位置。到这个程度,还好。

但是现在我有一个要求,我必须在 webdav 位置创建一个新目录(基于条件)并将文件或文档上传到新创建的目录中。

这我必须通过Java来实现。我尝试使用 file.mkdir() 创建一个目录。但它对我来说是错误的。

谁能告诉我我该如何克服这种情况?

亲切的问候

副部

4

2 回答 2

1

与您的 WebDAV 服务建立 HTTP 连接并发出 MKCOL 请求(MKCOL 就像 GET、POST 等)。像这样的东西:

MKCOL /the/directory/you/want/to/create HTTP/1.1

您应该期待 201 响应。如果你得到别的东西,这意味着目录创建失败。

于 2012-08-06T14:44:51.023 回答
0

谢谢克里斯托弗!!

我想说明使用示例应用程序创建 webdav 文件夹的代码。

public class CreateWebdavFolderUsingHttpClient {

    private static String url = "http://localhost:8081/webdav/subbu/MyWebdavFolder";

    public static void main(String[] args) {
        String response = null;
        /* Create an instance of HttpClient.*/
        HttpClient client = new HttpClient();
        client.getState().setCredentials(
                new AuthScope(AuthScope.ANY_HOST, AuthScope.ANY_PORT),
                new UsernamePasswordCredentials("tomcat", "tomcat"));

        DavMethod method = new MkColMethod(url);
        try {
            client.executeMethod(method);
            response = method.getStatusCode() + " - " + method.getStatusText();
            client.executeMethod(new MkColMethod(url + "/10300"));
            response = method.getStatusCode() + " - " + method.getStatusText();
        } catch (IOException ex) {
            // Catch error
        } finally {
            method.releaseConnection();
        }
        System.out.println(response);
    }
}
于 2012-08-07T06:13:24.297 回答