`
icarusliu
  • 浏览: 238089 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

WebDav 测试开发笔记

阅读更多
  • 方案的选择:
    • Slide :
      • 不足:其开源组件最后版本时间是04年,最近几年都没有再进行更新
      • Slide项目有几个地方做的很差: 定位,从项目的计划上看它要实现WebDav标准,WebDav对于企业的内容管理应用而言是非常有吸引力的,从项目定位上看,有两个方面的工作需要划分,即WebDav服务和基于WebDav的应用系统,Slide则两个工作一起做,后果就是两个工作都没做好。   内容,从提交的版本代码上看,很多内容没有实现,比如版本控制、全文检索等,如果看了项目介绍,然后看了实现的内容,反差太大,很多地方大家看了它的代码就会知道。  应用设计,有时候我的感觉是项目的功能设计人员根本就不知道自己在做什么,企业内容管理到底要做什么?文档对象的定义、文档处理的流程很零乱,如果要和它进行应用集成所要修改的工作量是很大的。 Apache基于系统和服务引擎这方面的有些项目做的很好,如果既做服务,又做应用,往往项目的应用设计都很差,给人的感觉是几个没什么经验的人做的。同时服务和应用耦合的又很紧,不仔细分析它的代码,很难分拆,如果这个项目再基于Apache的某个框架,比如Turbine,那基本上宣布你不要用这个项目了,Jetspeed也有这方面的毛病。
    • Milton:暂时没有研究
    • Jackrabbit:不足:不是专门的实现webdav方面的工具

  最后还是选用了slide来实现,因为slide实例比较多,而且也比后两种要成熟些。

import org.apache.webdav.lib.WebdavResource;
import org.apache.commons.httpclient.HttpURL; import java.io.File;

public class Test {
	 public static void main (String args[]) 
     {
         try 
          {
             HttpURL hrl = 
                 new HttpURL( "http://localhost:8080/slide/" );
             hrl.setUserinfo("root", "root");
             WebdavResource wdr = 
                 new WebdavResource(hrl);
             File fn = new File( "c:\\hehe.jpg" );             
             wdr.putMethod(wdr.getPath() + "\\files\\hehe.jpg",fn);
             wdr.close();
         } 
         catch (Exception ex)
         {
        	 ex.printStackTrace();
         } 
     } 
}

  注意:如果上传的目录不是files,会出错,文件没法正常保存,应该是用户对files的其它目录没有写的权限。刚接触slide,对这些还不是很清楚。

 

 

  • slide对于文件处理的过程:

1,打开连接。
2,列出文件
3,锁定文件
4,下在文件
5,上传文件
6,解锁文件
7,关闭连接

 

 

TODO:

1.实现文件的浏览(好实现),上传(好实现),下载(好实现),删除(好实现),修改(怎么样实现直接在浏览器中修改然后保存?或者可不可以这样实现?)

        2.对文件的并发操作的控制。

 

分享到:
评论
1 楼 u012414590 2015-08-27  
博主,我想问一下,webdav能否集成到自己的服务器上,打个比方说我把文件放在自己服务器上,但是想利用webdav来做在线编辑,可以实现吗?

相关推荐

    Laravel开发-laravel-webdav

    6. **测试与使用**:配置完成后,可以通过WebDAV客户端(如 Transmit、Cyberduck 等)连接到你的Laravel应用,查看并操作文件系统。 ### 高级功能 - **权限控制**:你可以根据需求设定不同用户的访问权限,比如限制...

    Laravel开发-laravel-webdav-method

    在标题提到的"Laravel开发-laravel-webdav-method"中,我们关注的是如何在Laravel 4中实现WebDAV功能。WebDAV为Laravel应用提供了支持远程文件操作的能力,比如创建、读取、更新和删除服务器上的文件,这对于分布式...

    webdav客户端中文版

    WebDAV客户端是用于与WebDAV服务器交互的软件,使得用户可以如同操作本地文件系统一样操作远程服务器上的文件。 标题中的"webdav客户端中文版"指的是支持中文界面的WebDAV客户端软件,这为中文用户提供了更加友好的...

    android webdav工具类

    在Android开发中,WebDAV(Web-based Distributed Authoring and Versioning)是一种协议,它扩展了HTTP协议,允许用户以类似文件系统的方式存取远程服务器上的文件。WebDAV工具类在Android应用中通常用于实现文件...

    webdav模块

    apache webdav

    IIS webdav扫描器

    【IIS WebDAV扫描器】是一种专门针对微软Internet Information Services (IIS) Web服务器上WebDAV服务的安全检测工具。WebDAV(Web-based Distributed Authoring and Versioning)是HTTP协议的一个扩展,允许用户...

    FileBackup-WebDav 1.8.5 绿色版_结合你的WebDav进行备份.rar

    《FileBackup-WebDav 1.8.5:基于WebDav的高效备份解决方案》 FileBackup-WebDav 1.8.5是一款专为用户设计的绿色版备份工具,它以其便捷性和可靠性在IT领域中占有一席之地。这款软件的核心功能在于其与WebDav服务的...

    webdav安卓包.zip

    这个“webdav安卓包.zip”文件显然是一个针对Android平台的WebDAV客户端应用的开发资源包。下面我们将详细探讨WebDAV、如何在Android上实现它,以及与群晖NAS(Network Attached Storage)的集成。 首先,WebDAV...

    Crispy Synced Notes:具有WebDAV同步功能的笔记记录程序-开源

    具有WebDAV同步功能的笔记记录程序。 它在本地(和WebDAV)目录上工作,并在树形视图中显示项目(文本/图像/二进制)。 任何更改都将直接反映在文件系统中。 功能:-以树形结构(使用文件夹)对笔记和图像进行分组-...

    tomcat中间件禁用webdav方法

    tomcat中间件禁用webdav方法 通过本方法,可以完成所有运行于该tomcat之上的java项目均拦截webdav方法。

    webdav.net

    在标题“webdav.net”中,我们可以推测这是一个与WebDAV相关的.NET框架或库,可能用于构建支持WebDAV服务的应用。 描述中提到的RFC2518和RFC4918是WebDAV的核心规范。RFC2518是最初的WebDAV规范,定义了基本的...

    webdav实现office在线编辑

    在本场景中,我们将探讨如何利用IIS(Internet Information Services)服务器上的WebDAV功能实现Office文档的在线编辑保存,特别针对Windows 7 SP1操作系统和Office 2007环境。 首先,为了启用WebDAV,我们需要在...

    Qt实现WebDav请求

    Qt实现WebDav请求,基于QNetworkAccessManager、QNetworkReply、QNetworkRequest调用qt自带得sendCustomRequest(const QNetworkRequest &request, const QByteArray &verb, QHttpMultiPart *multiPart)接口实现

    WebDav_Client.zip

    Microsoft windows2000、XP、Win7及IE, Office还有Adobe/MacroMedia的DW等都支持Webdav,这又大大增强了Web应用的价值,以及效能。对于需要大量发布内容的用户而言,应用WebDav可以降低对CMS系统的依赖,而且能够更...

    webdav-aliyundriver-2.4.0.zip

    "webdav-aliyundriver-2.4.0.zip" 是一个用于将阿里云盘映射为本地网络驱动器的软件包,通过这个驱动程序,用户可以像操作本地文件系统一样操作阿里云盘中的文件,无需频繁下载和上传,提高工作效率。 该驱动程序的...

    windows linux webdav 挂载

    **Windows和Linux之间WebDAV挂载的知识点详解** WebDAV是一种基于HTTP协议的协议,允许用户编辑和管理远程服务器上的文件。在Windows和Linux系统中,可以通过特定的工具来实现对WebDAV服务器的挂载,以便像操作本地...

    如何通过“网上邻居”访问WebDAV服务器

    ### 如何通过“网上邻居”访问WebDAV服务器 #### WebDAV简介 WebDAV(Web Distributed Authoring and Versioning)是一种基于HTTP协议的扩展技术,它支持用户对文件进行远程编辑和管理。WebDAV允许用户如同操作...

    Python-WsgiDAV是一个用Python开发的通用WebDAV服务器

    Python-WsgiDAV是一个强大的开源项目,专门用于构建WebDAV服务器,它完全由Python语言编写,充分利用了Python的灵活性和可扩展性。WebDAV是一种基于HTTP协议的协议,用于用户编辑和管理存储在远程服务器上的文件。...

Global site tag (gtag.js) - Google Analytics