[ 
https://issues.apache.org/activemq/browse/CAMEL-3309?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=63124#action_63124
 ] 

Claus Ibsen commented on CAMEL-3309:
------------------------------------

In the recursive test we expect it to be able to download all 3 files

FileZilla log
{code}
(000020)06/11/2010 13:09:37 - (not logged in) (127.0.0.1)> Connected, sending 
welcome message...
(000020)06/11/2010 13:09:37 - (not logged in) (127.0.0.1)> 220-FileZilla Server 
version 0.9.37 beta
(000020)06/11/2010 13:09:37 - (not logged in) (127.0.0.1)> 220-written by Tim 
Kosse (tim.ko...@gmx.de)
(000020)06/11/2010 13:09:37 - (not logged in) (127.0.0.1)> 220 Please visit 
http://sourceforge.net/projects/filezilla/
(000020)06/11/2010 13:09:37 - (not logged in) (127.0.0.1)> USER camel
(000020)06/11/2010 13:09:37 - (not logged in) (127.0.0.1)> 331 Password 
required for camel
(000020)06/11/2010 13:09:37 - (not logged in) (127.0.0.1)> PASS *****
(000020)06/11/2010 13:09:37 - camel (127.0.0.1)> 230 Logged on
(000020)06/11/2010 13:09:37 - camel (127.0.0.1)> TYPE A
(000020)06/11/2010 13:09:37 - camel (127.0.0.1)> 200 Type set to A
(000020)06/11/2010 13:09:37 - camel (127.0.0.1)> PWD
(000020)06/11/2010 13:09:37 - camel (127.0.0.1)> 257 "/" is current directory.
(000020)06/11/2010 13:09:37 - camel (127.0.0.1)> CWD one
(000020)06/11/2010 13:09:37 - camel (127.0.0.1)> 250 CWD successful. "/one" is 
current directory.
(000020)06/11/2010 13:09:37 - camel (127.0.0.1)> CWD two
(000020)06/11/2010 13:09:37 - camel (127.0.0.1)> 250 CWD successful. "/one/two" 
is current directory.
(000020)06/11/2010 13:09:37 - camel (127.0.0.1)> SYST
(000020)06/11/2010 13:09:37 - camel (127.0.0.1)> 215 UNIX emulated by FileZilla
(000020)06/11/2010 13:09:37 - camel (127.0.0.1)> PORT 127,0,0,1,7,235
(000020)06/11/2010 13:09:37 - camel (127.0.0.1)> 200 Port command successful
(000020)06/11/2010 13:09:37 - camel (127.0.0.1)> LIST
(000020)06/11/2010 13:09:37 - camel (127.0.0.1)> 150 Opening data channel for 
directory list.
(000020)06/11/2010 13:09:37 - camel (127.0.0.1)> 226 Transfer OK
(000020)06/11/2010 13:09:37 - camel (127.0.0.1)> CWD sub-a
(000020)06/11/2010 13:09:37 - camel (127.0.0.1)> 250 CWD successful. 
"/one/two/sub-a" is current directory.
(000020)06/11/2010 13:09:37 - camel (127.0.0.1)> PORT 127,0,0,1,7,236
(000020)06/11/2010 13:09:37 - camel (127.0.0.1)> 200 Port command successful
(000020)06/11/2010 13:09:37 - camel (127.0.0.1)> LIST
(000020)06/11/2010 13:09:37 - camel (127.0.0.1)> 150 Opening data channel for 
directory list.
(000020)06/11/2010 13:09:37 - camel (127.0.0.1)> 226 Transfer OK
(000020)06/11/2010 13:09:37 - camel (127.0.0.1)> CDUP
(000020)06/11/2010 13:09:37 - camel (127.0.0.1)> 200 CDUP successful. 
"/one/two" is current directory.
(000020)06/11/2010 13:09:37 - camel (127.0.0.1)> CWD sub-b
(000020)06/11/2010 13:09:37 - camel (127.0.0.1)> 250 CWD successful. 
"/one/two/sub-b" is current directory.
(000020)06/11/2010 13:09:37 - camel (127.0.0.1)> PORT 127,0,0,1,7,237
(000020)06/11/2010 13:09:37 - camel (127.0.0.1)> 200 Port command successful
(000020)06/11/2010 13:09:37 - camel (127.0.0.1)> LIST
(000020)06/11/2010 13:09:37 - camel (127.0.0.1)> 150 Opening data channel for 
directory list.
(000020)06/11/2010 13:09:37 - camel (127.0.0.1)> 226 Transfer OK
(000020)06/11/2010 13:09:37 - camel (127.0.0.1)> CDUP
(000020)06/11/2010 13:09:37 - camel (127.0.0.1)> 200 CDUP successful. 
"/one/two" is current directory.
(000020)06/11/2010 13:09:37 - camel (127.0.0.1)> CWD /
(000020)06/11/2010 13:09:37 - camel (127.0.0.1)> 250 CWD successful. "/" is 
current directory.
(000020)06/11/2010 13:09:37 - camel (127.0.0.1)> PWD
(000020)06/11/2010 13:09:37 - camel (127.0.0.1)> 257 "/" is current directory.
(000020)06/11/2010 13:09:37 - camel (127.0.0.1)> CWD one
(000020)06/11/2010 13:09:37 - camel (127.0.0.1)> 250 CWD successful. "/one" is 
current directory.
(000020)06/11/2010 13:09:37 - camel (127.0.0.1)> CWD two
(000020)06/11/2010 13:09:37 - camel (127.0.0.1)> 250 CWD successful. "/one/two" 
is current directory.
(000020)06/11/2010 13:09:37 - camel (127.0.0.1)> PORT 127,0,0,1,7,238
(000020)06/11/2010 13:09:37 - camel (127.0.0.1)> 200 Port command successful
(000020)06/11/2010 13:09:37 - camel (127.0.0.1)> RETR foo.txt
(000020)06/11/2010 13:09:37 - camel (127.0.0.1)> 150 Opening data channel for 
file transfer.
(000020)06/11/2010 13:09:37 - camel (127.0.0.1)> 226 Transfer OK
(000020)06/11/2010 13:09:37 - camel (127.0.0.1)> CWD /
(000020)06/11/2010 13:09:37 - camel (127.0.0.1)> 250 CWD successful. "/" is 
current directory.
(000020)06/11/2010 13:09:38 - camel (127.0.0.1)> PWD
(000020)06/11/2010 13:09:38 - camel (127.0.0.1)> 257 "/" is current directory.
(000020)06/11/2010 13:09:38 - camel (127.0.0.1)> CWD one
(000020)06/11/2010 13:09:38 - camel (127.0.0.1)> 250 CWD successful. "/one" is 
current directory.
(000020)06/11/2010 13:09:38 - camel (127.0.0.1)> CWD two
(000020)06/11/2010 13:09:38 - camel (127.0.0.1)> 250 CWD successful. "/one/two" 
is current directory.
(000020)06/11/2010 13:09:38 - camel (127.0.0.1)> CWD sub-a
(000020)06/11/2010 13:09:38 - camel (127.0.0.1)> 250 CWD successful. 
"/one/two/sub-a" is current directory.
(000020)06/11/2010 13:09:38 - camel (127.0.0.1)> PORT 127,0,0,1,7,239
(000020)06/11/2010 13:09:38 - camel (127.0.0.1)> 200 Port command successful
(000020)06/11/2010 13:09:38 - camel (127.0.0.1)> RETR a.txt
(000020)06/11/2010 13:09:38 - camel (127.0.0.1)> 150 Opening data channel for 
file transfer.
(000020)06/11/2010 13:09:38 - camel (127.0.0.1)> 226 Transfer OK
(000020)06/11/2010 13:09:38 - camel (127.0.0.1)> CWD /
(000020)06/11/2010 13:09:38 - camel (127.0.0.1)> 250 CWD successful. "/" is 
current directory.
(000020)06/11/2010 13:09:38 - camel (127.0.0.1)> PWD
(000020)06/11/2010 13:09:38 - camel (127.0.0.1)> 257 "/" is current directory.
(000020)06/11/2010 13:09:38 - camel (127.0.0.1)> CWD one
(000020)06/11/2010 13:09:38 - camel (127.0.0.1)> 250 CWD successful. "/one" is 
current directory.
(000020)06/11/2010 13:09:38 - camel (127.0.0.1)> CWD two
(000020)06/11/2010 13:09:38 - camel (127.0.0.1)> 250 CWD successful. "/one/two" 
is current directory.
(000020)06/11/2010 13:09:38 - camel (127.0.0.1)> CWD sub-b
(000020)06/11/2010 13:09:38 - camel (127.0.0.1)> 250 CWD successful. 
"/one/two/sub-b" is current directory.
(000020)06/11/2010 13:09:38 - camel (127.0.0.1)> PORT 127,0,0,1,7,240
(000020)06/11/2010 13:09:38 - camel (127.0.0.1)> 200 Port command successful
(000020)06/11/2010 13:09:38 - camel (127.0.0.1)> RETR b.txt
(000020)06/11/2010 13:09:38 - camel (127.0.0.1)> 150 Opening data channel for 
file transfer.
(000020)06/11/2010 13:09:38 - camel (127.0.0.1)> 226 Transfer OK
(000020)06/11/2010 13:09:38 - camel (127.0.0.1)> CWD /
(000020)06/11/2010 13:09:38 - camel (127.0.0.1)> 250 CWD successful. "/" is 
current directory.
(000020)06/11/2010 13:09:38 - camel (127.0.0.1)> QUIT
(000020)06/11/2010 13:09:38 - camel (127.0.0.1)> 221 Goodbye
(000020)06/11/2010 13:09:38 - camel (127.0.0.1)> disconnected.
{code}

And the downloaded file structure is as follows:
{code}
E:\workspace\camel\components\camel-ftp\target\ftptest>dir /s/b
E:\workspace\camel\components\camel-ftp\target\ftptest\foo.txt
E:\workspace\camel\components\camel-ftp\target\ftptest\sub-a
E:\workspace\camel\components\camel-ftp\target\ftptest\sub-b
E:\workspace\camel\components\camel-ftp\target\ftptest\sub-a\a.txt
E:\workspace\camel\components\camel-ftp\target\ftptest\sub-b\b.txt
{code}

In this simple test it download the 3 files from the FileZilla server and put 
the file in the expected directory on the consumer side.
Notice that we don't have the leading one/two folders in the downloaded 
structure which is expected.


> Stepwise change of directory unfit for production (ftp/ftps/sftp)
> -----------------------------------------------------------------
>
>                 Key: CAMEL-3309
>                 URL: https://issues.apache.org/activemq/browse/CAMEL-3309
>             Project: Apache Camel
>          Issue Type: Improvement
>          Components: camel-ftp
>    Affects Versions: 2.5.0
>            Reporter: Bengt Rodehav
>            Assignee: Claus Ibsen
>         Attachments: camel-ftp.patch
>
>
> In Camel 2.5, the logic for changing directory for ftp/ftps/sftp has changed 
> in order to fix the problems discussed in the following thread:
>   
> http://camel.465427.n5.nabble.com/How-to-change-directory-while-using-sftp-component-td2806817.html#a2807611
> In Camel 2.5 changing of the remote directory is now done in a stepwise 
> manner. This is a strategy not fit for production since it assumes that the 
> logged in ftp/ftps/sftp user has access to all intermediate directories all 
> the way down to its home directory. This is rarely the case.
> Also, when testing ftp/sftp on Serv-U, a Windows based ftp/ftps/sftp server, 
> it turns out that it reports the current directory in a "Windows way", e g 
> /C:/temp/servu/user/sample/file2sftp. The topmost folder is not "/" but 
> "/C:". This also breaks the new stepwise way of changing directory since it 
> always tries to change to "/" if an absolute path is used.
> I propose to introduce a configuration property to enable/disable stepwise 
> changing of directories where disabling it should be the default. I will 
> upload a patch shortly.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to