Ich versuche Apache VFS zu verwenden, um Dateien in SharePoint 2013 zu lesen, das als Netzlaufwerk bereitgestellt wird. Ich verwende den folgenden CodeNTLM-Authentifizierung mit Apache VFS
try {
StandardFileSystemManager manager = new StandardFileSystemManager();
manager.addProvider("http", new WebdavFileProvider());
manager.setCacheStrategy(CacheStrategy.ON_CALL);
manager.setFilesCache(new SoftRefFilesCache());
FileObject fileObject = manager.resolveFile("http://sp2013w2k12r2/PuneetsLibrary/");
System.out.println(fileObject.getFileSystem().hasCapability(Capability.LIST_CHILDREN));
System.out.println(fileObject.isFolder());
} catch (FileSystemException e) {
e.printStackTrace();
}
aber ich bekomme die folgende Fehler
org.apache.commons.httpclient.auth.AuthChallengeProcessor selectAuthScheme INFO: NTLM-Authentifizierungsschema ausgewählt 3. August 2016 5: 29:55 org.apache.commons.httpclient.HttpMethodDirector ProzessWWWAuthChallenge INFO: keine Anmeldeinformationen für NTLM @ sp2013w2k12r2 verfügbar: 80 org.apache.commons.vfs2.FileSystemException: Konnte den Dateityp "http://sp2013w2k12r2/PuneetsLibrary" nicht ermitteln. bei org.apache.commons.vfs2.provider.AbstractFileObject.getType (AbstractFileObject.java:1526) bei org.apache.commons.vfs2.provider.AbstractFileObject.isFolder (AbstractFileObject.java:1726) bei org.apache. commons.vfs2.impl.DecoratedFileObject.isFolder (DecoratedFileObject.java:211) bei SharePointVFSMain.main (SharePointVFSMain.java:18) verursacht durch: org.apache.commons.vfs2.FileSystemException: Unbekannte Nachricht mit Code "Unauthorized". bei org.apache.commons.vfs2.provider.webdav.ExceptionConverter.generate (ExceptionConverter.java:88) bei org.apache.commons.vfs2.provider.webdav.ExceptionConverter.generate (ExceptionConverter.java:41) um org.apache.commons.vfs2.provider.webdav.WebdavFileObject.execute (WebdavFileObject.java:594) bei org.apache.commons.vfs2.provider.webdav.WebdavFileObject.getProperties (WebdavFileObject.java:632) bei org. apache.commons.vfs2.provider.webdav.WebdavFileObject.getProperties (WebdavFileObject.java:620) bei org.apache.commons.vfs2.provider.webdav.WebdavFileObject.getProperty (WebdavFileObject.java:664) bei org.apache. commons.vfs2.provider.webdav.WebdavFileObject.getProperty (WebdavFileObject.java:671) bei org.apache.commons.vfs2.provider.webdav. WebdavFileObject.isDirectory (WebdavFileObject.java:716) bei org.apache.commons.vfs2.provider.webdav.WebdavFileObject.doGetType (WebdavFileObject.java:405) bei org.apache.commons.vfs2.provider.AbstractFileObject.getType (AbstractFileObject.java:1517) ... 3 weitere