org.apache.commons.net.ftpFTPClient, file will not be totally transferred.
--------------------------------------------------------------------------
Key: NET-417
URL: https://issues.apache.org/jira/browse/NET-417
Project: Commons Net
Issue Type: Bug
Components: FTP
Affects Versions: 3.0.1
Environment: Windows XP FTPClient program sending file to Windows 2003
IIS FTP Server
Reporter: tom yang
If I use this ftp.storeFile(f.getName(), stream) to transfer file to the FTP
Server. After the function returned the file will be partially sent.
E.g. If the file has 1025 bytes, only 1024 bytes will be sent while if the file
has 2050 bytes, only 2048 bytes will be sent.
That's because the default buffer size is 1024, each time 1024 bytes of file
content will be sent to the FTP server. But stream.flush() is not called at the
end of each transfer. Finally, socket stream to FTP server will be closed
before the
last transmission and the last frame of data, which may be less than 1024, will
be left unsent.
My way of fixing this BUG: Change the content of method
FtpClient.__storeFile(), change the last parameter for calling
Util.copyStream() to 'true'.
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira