啊apache tomcat 6.0 中提供了webdavservlet 支持webdav.在处理英文url上完全能通过。
但对于中文url往往出现乱码,其中包括其defaultservletdefaultservlet 在相应目录请求时能正确的将utf-8格式url编码,但在请求包含中文名称的url时,将url识别为乱码,不能正确处理。其问题在于url编码。
实际上webdavservlet的中文问题也是由webdavservlet引起。
所以,在不改变apache tomcat 代码的情况下,通过如下方式可解决该问题
基于webdavservlet新建一个类,将目录/*映射到该servlet.并设定必要的初始化参数(与webservlet相同
重载
@override
protected String getRelativePath(HttpServletRequest request) {
/**对于defaultservlet
*return new String(getRelativePath(request).getbytes("iso-8859-1"),"utf-8");
*/
return new String(getRelativePath(request)..getbytes("iso-8859-1"));
} 好了,这样浏览中文目录就没问题了 最近为webdav登录验证迷糊,有知道的同志们请救济救济
protected String getRelativePath(HttpServletRequest request) {
/**对于defaultservlet
*return new String(getRelativePath(request).getbytes("iso-8859-1"),"utf-8");
*/
return new String(getRelativePath(request)..getbytes("iso-8859-1"));
} 好了,这样浏览中文目录就没问题了 最近为webdav登录验证迷糊,有知道的同志们请救济救济