Uploaded image for project: 'Commons VFS'
  1. Commons VFS
  2. VFS-201

FTP is failing by saying "File doesn't exist" even the file exists and a valid file.

    XMLWordPrintableJSON

    Details

    • Type: Bug
    • Status: Open
    • Priority: Major
    • Resolution: Unresolved
    • Affects Version/s: None
    • Fix Version/s: None
    • Labels:
      None
    • Environment:

      Linux

      Description

      Hi,

      We are facing a strange problem with vfs file transfer from one of the FTP locations. Java code throws the FileSystemException by saying "<particular file> does not exist". On the other hand, FTP to that site and wget are working.

      Moreover, from the same machine we are able to FTP from the command line and able to download the file using get command.
      And also, wget works fine. No idea the same is failing from java.

      Please find the code snippent below:

      FileSystemOptions fso = new FileSystemOptions();
      SftpFileSystemConfigBuilder.getInstance().setStrictHostKeyChecking(fso, "no");

      FileObject sourceFileObject = fsm.resolveFile(sourceUri, fso);
      String sourceFilePath = sourceFileObject.getName().getPath();

      FileObject targetFileObject = fsm.resolveFile(targetUri, fso);

      FileObject tfo = targetFileObject;
      if(tfo.getType() == FileType.FOLDER)
      tfo = targetFileObject.resolveFile(sourceFileObject.getName().getBaseName());
      LOGGER.info("The URI is a file");
      LOGGER.info("Remote Path: [" + sourceFileObject.getName().getPath() + "] Local Path: [" + tfo.getName().getPath() + "]");
      copyFile(sourceFileObject, tfo);

      copyFrom method:

      private void copyFile(FileObject sourceFileObject, FileObject targetFileObject)

      { targetFileObject.copyFrom(sourceFileObject, new AllFileSelector()); copiedFiles.add(sourceFileObject.getName().getPath()); }

      catch (FileSystemException e)

      { failedFiles.add(sourceFileObject.getName().getPath()); failedFileExceptions.add(e); LOGGER.error("Exception in FileTransferAgent:copyFile "+e); }

      }

      exception is:

      Exception in FileTransferAgent:copyFile org.apache.commons.vfs.FileSystemException: Could not copy "ftp://usename:password@ipaddress/home/blrproj/console.out" because it does not exist.
      org.apache.commons.vfs.FileSystemException: Could not copy "ftp://usename:password@ipaddress/home/blrproj/console.out" because it does not exist.
      at org.apache.commons.vfs.provider.AbstractFileObject.copyFrom(AbstractFileObject.java:858)
      at FileTransferAgent.copyFile(FileTransferAgent.java:153)
      at FileTransferAgent.copyFiles(FileTransferAgent.java:131)
      at FileTransferAgent.main(FileTransferAgent.java:238)

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                Unassigned
                Reporter:
                satishkumar.k Satish Kumar Kommuri
              • Votes:
                1 Vote for this issue
                Watchers:
                2 Start watching this issue

                Dates

                • Created:
                  Updated: