Gopal Warawate created VFS-747:
----------------------------------

             Summary: org.apache.commons.vfs2.FileSystemException: Could not 
determine if file "sftp://!!!!!:***@XXXXX/C:/folder1"; is writeable.
                 Key: VFS-747
                 URL: https://issues.apache.org/jira/browse/VFS-747
             Project: Commons VFS
          Issue Type: Bug
            Reporter: Gopal Warawate


Below simple code using moveTo Api from vfs2 use to work with 
commons-vfs2-2.0.jar but it doesn’t work with version commons-vfs2-2.2.jar

it works perfectly fine with SFTP server running on LINUX, only it failse on 
SFTP server running on windows server.

Please any suggestions.

 

ls command show as below on both server:

Windows :

sftp> ls -l
 -rw-rw---- 1 no-user no-group 86 Nov 20 11:03 test.txt

Linux:

sftp> ls -l
 -rwxr-xr-x 1 userttest dba 86 Nov 20 11:05 test.txt

 

Code sample:

public static boolean move(String hostName, String username, String password, 
String remoteSrcFilePath, String remoteDestFilePath){
 StandardFileSystemManager manager = new StandardFileSystemManager();

try {
 manager.init();

// Create remote object
 FileObject remoteFile = manager.resolveFile(createConnectionString(hostName, 
username, password, remoteSrcFilePath), createDefaultOptions());
 FileObject remoteDestFile = 
manager.resolveFile(createConnectionString(hostName, username, password, 
remoteDestFilePath), createDefaultOptions());

if (remoteFile.exists())
{ remoteFile.moveTo(remoteDestFile);; System.out.println("Move remote file 
success"); return true; }
else
{ System.out.println("Source file doesn't exist"); return false; }
} catch (Exception e)
{ throw new RuntimeException(e); }
finally
{ manager.close(); }
}

 

Error:

[main] INFO org.apache.commons.vfs2.provider.sftp.SftpClientFactory - 
Authentication succeeded (keyboard-interactive).
 'id' is not recognized as an internal or external command,
 operable program or batch file.
 [main] INFO org.apache.commons.vfs2.provider.sftp.SftpClientFactory - 
Disconnecting from XXXXX port 22
 Exception in thread "main" java.lang.RuntimeException: 
org.apache.commons.vfs2.FileSystemException: Could not determine if file 
"sftp://!!!!!:***@XXXXX/C:/folder1"; is writeable.
 at com.test.SFTPUtility.move(SFTPUtility.java:107)
 at com.test.SFTPUtility.main(SFTPUtility.java:35)
 Caused by: org.apache.commons.vfs2.FileSystemException: Could not determine if 
file "sftp://!!!!!:***@XXXXX/C:/folder1"; is writeable.
 at 
org.apache.commons.vfs2.provider.AbstractFileObject.isWriteable(AbstractFileObject.java:1602)
 at 
org.apache.commons.vfs2.provider.AbstractFileObject.moveTo(AbstractFileObject.java:1646)
 at com.test.SFTPUtility.move(SFTPUtility.java:98)
 ... 1 more
 Caused by: com.jcraft.jsch.JSchException: Could not get the groups id of the 
current user (error code: 1)
 at 
org.apache.commons.vfs2.provider.sftp.SftpFileSystem.getGroupsIds(SftpFileSystem.java:237)
 at 
org.apache.commons.vfs2.provider.sftp.SftpFileObject.getPermissions(SftpFileObject.java:231)
 at 
org.apache.commons.vfs2.provider.sftp.SftpFileObject.doIsWriteable(SftpFileObject.java:263)
 at 
org.apache.commons.vfs2.provider.AbstractFileObject.isWriteable(AbstractFileObject.java:1594)
 ... 3 more

 



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to