Is this in 2.0 or using the trunk version? If not trunk, can you check out trunk and test your scenario?
Gayr On Thu, Jul 31, 2014 at 4:43 PM, Jörg Wille <joerg.wi...@gmail.com> wrote: > This is the first time I use VFS. But local and http file access works. > But using webdav (with *Alfresco* as server) does not work. > The Problem is similar to this one: > > http://mail-archives.apache.org/mod_mbox/commons-user/201109.mbox/%3C004001cc769b$ff3e6770$fdbb3650$@queres.com%3E > > *I am doing the following:* > > private static final String URL = "webdav:// > admin:alfresco@192.168.66.124:8080/alfresco/webdav/firmware/"; > DefaultFileSystemManager manager = new DefaultFileSystemManager(); > manager.addProvider("file", new DefaultLocalFileProvider()); > manager.addProvider("http", new HttpFileProvider()); > manager.addProvider("webdav", new WebdavFileProvider()); > manager.setCacheStrategy(CacheStrategy.ON_RESOLVE); > manager.setFilesCache(new SoftRefFilesCache()); > manager.init(); > final FileObject fileObject = manager.resolveFile(URL) > System.out.println("Name:" + fileObject.getName()); > System.out.println("Attached:" + fileObject.isAttached()); > try { > fileObject.isReadable(); > } catch (Exception e) { > System.out.println("Message: " + e.getMessage() + "\nCause: " + > e.getCause()+ "\nStacktrace: " + getStackTrace(e)); > } > try { > fileObject.getChildren(); > } catch (Exception e) { > System.out.println("Message: " + e.getMessage() + "\nCause: " + > e.getCause()+ "\nStacktrace: " + getStackTrace(e)); > } > try { > fileObject.isFolder(); > } catch (Exception e) { > System.out.println("Message: " + e.getMessage() + "\nCause: " + > e.getCause()+ "\nStacktrace: " + getStackTrace(e)); > } > > *Result:* > > Name:webdav://admin:alfresco@192.168.66.124:8080/alfresco/webdav/firmware/ > > *Attached:false* > > Message: Could not determine if file "webdav://admin:***@ > 192.168.66.124:8080/alfresco/webdav/firmware/" is readable. > > Cause: org.apache.commons.vfs2.FileSystemException: Could not determine the > type of file "webdav://admin:***@ > 192.168.66.124:8080/alfresco/webdav/firmware/". > > Stacktrace: org.apache.commons.vfs2.FileSystemException: Could not > determine if file "webdav://admin:***@ > 192.168.66.124:8080/alfresco/webdav/firmware/" is readable. > > … > > Caused by: java.lang.ClassCastException: java.util.ArrayList cannot be cast > to org.w3c.dom.Node > > at > > org.apache.commons.vfs2.provider.webdav.WebdavFileObject.isDirectory(WebdavFileObject.java:718) > > at > > org.apache.commons.vfs2.provider.webdav.WebdavFileObject.doGetType(WebdavFileObject.java:405) > > at > > org.apache.commons.vfs2.provider.AbstractFileObject.getType(AbstractFileObject.java:1497) > > ... 57 more > > > Message: Could not list the contents of folder "webdav://admin:***@ > 192.168.66.124:8080/alfresco/webdav/firmware/". > > Cause: java.lang.ClassCastException: java.util.ArrayList cannot be cast to > org.w3c.dom.Node > > Stacktrace: org.apache.commons.vfs2.FileSystemException: Could not list the > contents of folder "webdav://admin:***@ > 192.168.66.124:8080/alfresco/webdav/firmware/". > > … > > Caused by: java.lang.ClassCastException: java.util.ArrayList cannot be cast > to org.w3c.dom.Node > > at > > org.apache.commons.vfs2.provider.webdav.WebdavFileObject.isDirectory(WebdavFileObject.java:718) > > at > > org.apache.commons.vfs2.provider.webdav.WebdavFileObject.doListChildrenResolved(WebdavFileObject.java:453) > > at > > org.apache.commons.vfs2.provider.AbstractFileObject.getChildren(AbstractFileObject.java:1147) > > ... 55 more > > > Message: Could not determine the type of file "webdav://admin:***@ > 192.168.66.124:8080/alfresco/webdav/firmware/". > > Cause: java.lang.ClassCastException: java.util.ArrayList cannot be cast to > org.w3c.dom.Node > > Stacktrace: org.apache.commons.vfs2.FileSystemException: Could not > determine the type of file "webdav://admin:***@ > 192.168.66.124:8080/alfresco/webdav/firmware/". > > … > > Caused by: java.lang.ClassCastException: java.util.ArrayList cannot be cast > to org.w3c.dom.Node > > at > > org.apache.commons.vfs2.provider.webdav.WebdavFileObject.isDirectory(WebdavFileObject.java:718) > > at > > org.apache.commons.vfs2.provider.webdav.WebdavFileObject.doGetType(WebdavFileObject.java:405) > > at > > org.apache.commons.vfs2.provider.AbstractFileObject.getType(AbstractFileObject.java:1497) > > ... 56 more > > What am I doing wrong? And what does "Attached:false" means? > -- E-Mail: garydgreg...@gmail.com | ggreg...@apache.org Java Persistence with Hibernate, Second Edition <http://www.manning.com/bauer3/> JUnit in Action, Second Edition <http://www.manning.com/tahchiev/> Spring Batch in Action <http://www.manning.com/templier/> Blog: http://garygregory.wordpress.com Home: http://garygregory.com/ Tweet! http://twitter.com/GaryGregory