You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@commons.apache.org by "Gopal Warawate (Jira)" <ji...@apache.org> on 2019/11/21 06:28:00 UTC
[jira] [Updated] (VFS-747)
org.apache.commons.vfs2.FileSystemException: Could not determine if file
"sftp://!!!!!:***@XXXXX/C:/folder1" is writeable.
[ https://issues.apache.org/jira/browse/VFS-747?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Gopal Warawate updated VFS-747:
-------------------------------
Docs Text: https://issues.apache.org/jira/browse/VFS-617
Affects Version/s: 2.2
2.4.1
> 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
> Affects Versions: 2.2, 2.4.1
> Reporter: Gopal Warawate
> Priority: Major
>
> 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)