commons-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Magid, J. (Joe)" <>
Subject RE: [NET] Help with change directory
Date Tue, 26 Jul 2011 13:25:33 GMT
I'd also suggest doing a command line FTP connect and execute the change folder by hand to
ensure that you are where you think you are when you connect - usually each login ID is assigned
a particular folder location and you might not be where you think you are. 

You also may not want to include the leading / in your cwd input parm. If you are trying to
do a relative directory change folder then the leading / will be trying to change you to an
absolute folder location from the top of the folder tree on the drive you are connecting to.

(And I'm not sure about the earlier advice about VFS - it's got lots of capabilities, but
isn't anywhere near as straight forward to work with if you're not a pretty experienced Java
person, as is the case for me!)

Joe Magid 
Senior Developer
ING - Annuity Manufacturing IT Production Support
Office: (610) 425-3750 
Cell:    (610) 506-4595

-----Original Message-----
From: sebb [] 
Sent: Tuesday, July 26, 2011 07:40 AM
To: Commons Users List
Subject: Re: [NET] Help with change directory

On 25 July 2011 21:41, Diane Baumgartner <> wrote:
> I'm new to Apache Commons  (3.0.1), and am writing a Java program to FTP a file on my
local server to an FTP server on the same network.

First, please prefix the subject line with the Commons component; in this case [NET] as I
have done in this reply.

> First, I'd like to make sure that changeWorkingDirectory() changes the directory on the
remote machine.  It's not clear from the documentation.

The command corresponds with the standard FTP command CWD, which attempts to change the remote

> The first thing hat happens is that the "Change Directory didn't work" prints out. 
but I don't know what went wrong.
> So, I'm trying to use getReply() for more information, but my program hangs on that line. 
I know this becuase the line before it prints, but not the line after it.
> Here's a code snippet:
> FTPClient ftp = new FTPClient();
> ftp.connect (server);
> // status checking here - print statements indicate that connect was 
> successful
> boolean OK = ftp.changeWorkingDirectory ("/tmp/dir_name"); if {OK} {
>   System.out.println ("Change directory worked"); } else {
>   System.out.println ("Change directory didn't work");
>   system.out.println ("The FTP Reply Code is");
>  reply = ftp.getReply();  // reply was defined as int before doing the 
> connect previous to this
>   System.out.println (Reply);
> }
> Thanks for any help you can offer.

getReply() is intended for low-level programming; it fetches the response from the server,
so no wonder the code hangs.

You need to use getReplyCode() and/or getReplyString().

Have a look at the FTPClientExample code.

To unsubscribe, e-mail:
For additional commands, e-mail:


NOTICE: The information contained in this electronic mail message is confidential and intended
only for certain recipients.  If you are not an intended recipient, you are hereby notified
that any disclosure, reproduction, distribution or other use of this communication and any
attachments is strictly prohibited.  If you have received this communication in error, please
notify the sender by reply transmission and delete the message without copying or disclosing


To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message