<%@ page contentType="text/html; charset=gb2312"%> WebDAV客户端开发实例
网站公告:   ◆北天JAVA技术网热情为java爱好者服务,本网内容包括JAVA(JSP、servlet、EJB、webservice、j2ee、javabean、应用服务器、JavaScript),数据库(MYSQL、SQL Server、Sybase、Oracle、DB2、数据库综合知识),设计研究(设计模式、Struts、Spring、Hibernate、设计框架、设计综合知识),WEB2.0新技术(主要介绍AJAX),以及各种技术的入门、实例、例子等等,欢迎各位多来坐坐!◆  诚邀各位JAVA爱好者加盟!◆  本网站内容丰富,更新快,保证每周20篇以上!  
加入收藏
设为首页
联系站长
承接项目
  相关资源:网站首页 | 免费培训学院 | 技术论坛 | JAVA聊天室 | 作家专栏 | 开发工具 | 认证考试 | 会员俱乐部
  JAVA技术初学者园地 | jsp与servlet | javascript | Java源代码 | EJB | web service | 应用服务器 | JAVA综合知识
  设计研究设计模式 | 设计框架 | Struts | Spring | Hibernate | 开源项目 | 面向对象设计 | 设计综合知识
  数 据 库MYSQL | SQL Server | Sybase | Oracle | DB2 | Informix | Access | 数据库综合知识
  其他资源:AJAX新技术 | 网站开发 | ERP软件 | OA办公软件 | 商业智能BI | 开发综合知识 | 承接项目 | 项目试用

 
 
WebDAV客户端开发实例
     发布者: 发布时间:2007-11-26
(一)环境搭建需从http://archive.apache.org/dist/jakarta/slide/binaries/下载jakarta-slide-2.1-tomcat-5.0.28.zip,jakarta-slide-webdavclient-bin-2.1.zip,jakarta-slide-webdavclient-bin-2.1.zip如过需要源码也可以从http://archive.apache.org/dist/jakarta/slide/source/找到server端和客户端的源码,相应文件是jakarta-slide-server-src-2.1.zip,jakarta-slide-webdavclient-src-2.1.zip.(二)配置slide server其实解压jakarta-slide-2.1-tomcat-5.0.28.zip后启动tomcat就可以了,因为这个zip文件已经配置好了slide server,在webapp目录下有一个slide.war,也可以拿这个文件在weblogic下配置一个slide server。如果机器上已配置好jdk,启动tomcat后,从浏览器地址栏输入http://localhost:8080/slide,这时会弹出一个登录窗口,输入用户名root,口令root(用户名口令和角色的配置见slide.war中的Domail.xml和web.xml)即可。(三)配置WebDAV客户端开发环境开发WebDAV客户端需要在classpath中设置几个jar文件,从jakarta-slide-webdavclient-bin-2.1.zip找到WebDAV客户端必须的四个jar文件:commons-httpclient.jar;jakarta-slide-webdavlib-2.1.jar;commons-logging.jar;jdom-1.0.jar。(四)编码实例-向slide server上传文件:slide server存储的文件位于tomcat bin目录下的store,经测试,如果需要将tomcatslide 中的文件转移到weblogic下部署的slide,只需将store目录整个复制即可。下面是一个WebDAV客户端文件上传代码://我将自己写的客户端类添加到了jakarta-slide-webdavlib-2.1.jar里,路径是//org.apache.webdav.lib.mycompackage org.apache.webdav.lib.mycom;import java.io.File;import java.io.IOException;import java.net.MalformedURLException;import org.apache.commons.httpclient.HttpException;import org.apache.commons.httpclient.HttpURL;import org.apache.webdav.lib.WebdavResource;import java.util.*;...//下面是putFileToWebDAV方法:public class CenSlideClientImpl{public static final boolean putFileToWebDAV(String urlPath,String urlFileName,String uid,String pwd,String localPath,String localFileName){boolean bool = false;try{HttpURL hrl = new HttpURL(urlPath);hrl.setUserinfo(uid,pwd);WebdavResource wdr = new WebdavResource(hrl);System.out.println("测试Web路径:" +wdr.getPath());File file = new File(localPath+"/"+localFileName); //指定上传本地某个目录下的文件String path = wdr.getPath();if(!path.endsWith("/"))path +="/";path += urlFileName; //上传到WebDAV后可按另外一个文件名保存System.out.println("\nFilePath is:" +path+"\n");//if (!wdr.isCollection())// throw new Exception("Path is currently a file");//wdr.setPath(currentPath + "/" + urlFileName);//wdr.setPath("/webdav/down.txt"); //如果指定的文件不存在则发生异常。try //尝试锁定{wdr.setPath(path);if (wdr.isLocked()){// bool = false;// System.out.println("文件已被锁定,上传失败!");// return bool;wdr.unlockMethod();bool = wdr.putMethod( path,file );}else{// wdr.lockMethod(uid,10000000);bool = wdr.putMethod( path,file );//wdr.unlockMethod();}}catch(Exception ex){bool = wdr.putMethod( path,file );//wdr.unlockMethod();System.out.println("\n文件不存在,不需锁定...\n");}finally{wdr.close();}}catch(MalformedURLException mue){System.out.println("MalformedURLException:"+mue.getMessage());}catch(HttpException he){System.out.println("HttpException:"+he.getMessage());}catch(IOException ioe){System.out.println("IOException:"+ioe.getMessage());}catch(Exception ex){System.out.println("ThrowException:"+ex.getMessage());}finally{//wdr.close();}return bool;}public static void main (String args[]){boolean bool = false;try{bool = putFileToWebDAV("http://localhost:8080/slide/files/","remotefile.txt","root","root","c:\\","localfile.txt");}catch(Exception ex){}}}main方法里的调用说明:将本地c:\localfile.txt文件上传到http://localhost:8080/slide/files/并命名为remotefile.txt,连接slide server的用户名和口令分别为root和root,这时再打开浏览器http://localhost:8080/slide/files/看看上传的文件。由于页面编辑不方便,格式不太整齐,请原谅。baozhengw999@hotmail.comsucc100@163.comQQ:29803446
(转载文章请保留出处:北天JAVA技术网(www.java114.com))
 
更多精彩文章:
在Jetspeed2.0中安装JCMS
Java 理论与实践:让 J2EE 脱离容器
使用acegi在业务逻辑层获得Web层的用户ID
基于Web2.0的AJAX十大安全漏洞以及成因
J2EE程序员应该掌握的Linux系统的知识
用RMI和CORBA进行分布式Java编程
 
最近评论:
        
鍥炲
        
那个雨天的想法!
wow gold,wow power leveling.wow power leveling,wow power leveling, max(6209)
        
如果真的有来生!
四川旅游,九寨沟旅游,稻城亚丁旅游,四姑娘山旅游,海螺沟旅游,西藏旅游, max(2113)
        
左边的风景!
wow gold,wow power leveling.wow power leveling,wow power leveling, max(3205)
        
轻轻走过你的窗前!
world of warcraft gold,cheap world of warcraft gold,warcraft gold,world of warcraft gold,cheap world of warcraft gold,warcraft gold, max(4319)
        
轻轻走过你的窗前!
world of warcraft gold,cheap world of warcraft gold,warcraft gold,world of warcraft gold,cheap world of warcraft gold,warcraft gold max(6375)
        
不在的哪天!
final fantasy xi gil,final fantasy xi gil,final fantasy xi gil,final fantasy xi gil, max(9386)
        
快乐情人节!
wow gold,wow gold,wow gold,wow gold,wow gold,wow gold,wow gold buy wow gold for cheap. max(7172)
        
昨夜的狂想曲!
wow gold,WoW Gold,world of warcraft gold,WoW Gold, max(1830)
        
没有情人的情人节!
wow gold,wow power leveling.wow power leveling,wow power leveling, max(1009)
        
标 题:   
内 容:   
 
                                  
 
免责声明:该文章由网友发表,如果对您造成侵权,请联系站长

首页 - 承接项目 - 网站地图 - 联系我们 -
版权所有北天JAVA技术工作室 ICP证号:粤ICP备06079815号