2012-08-10 3 views
2

하나의 amazon EC2 인스턴스에 FTP 서버를 설치하고 Apache 컴퓨터의 로컬 컴퓨터에서 Apache FTP 라이브러리를 사용하여 파일을 다운로드 할 수 있습니다. 이제 다른 Amazon EC2 인스턴스에서 동일한 ftpclient 프로그램을 실행하려고 시도하지만 작동하지 않습니다. 내 지역의 코드 잘 작동 모두java apache FTPClient를 사용하여 하나의 Amazon EC2 인스턴스에서 다른 EC2 인스턴스로 파일을 다운로드하는 방법

for(FTPFile f: ftp.listFiles(remote)) 
{ 
    System.out.println(f.getName()); 

} 

:

FTPClient ftp = new FTPClient(); 
String loc = "/home/ubuntu/test/"; 
String remote = "/home/ftp"; 
try 
{ 
    ftp.connect("ec2-xx-xx-xx-xxx.compute-1.amazonaws.com", 21); 
    ftp.login("username", "xxx"); 
    System.out.println("connected.."); 
    ftp.setFileType(FTP.BINARY_FILE_TYPE); 

    OutputStream output; 
    output = new FileOutputStream(loc+"file_name"); 
    ftp.retrieveFile(remote+"/filen_name", output); 
    output.close(); 
    ftp.disconnect(); 
} 
catch(Exception ex) 
{ 
    ex.printStackTrace(); 
} 

다음 코드는 원격 디렉토리의 모든 파일 이름을 나열 할 수 있습니다 : 여기 는 ftpsever에서 파일을 다운로드 할 수있는 샘플 코드입니다 아마존 기계에서는 작동하지 않습니다. 그것은 연결하지만 파일 이름이나 다운로드 파일을 나열 할 수 없습니다. 그리고 오류 메시지가 표시되지 않습니다. 나는 잠시 동안 같은 문제가 되었기 때문에 난 그냥, 가능한 답을 발견 advance--

+0

당신이 [수동] (전환 시도해 봤어 : 여기

링크입니다 .html # PASSIVE_LOCAL_DATA_CONNECTION_MODE) 모드? – Edenbauer

+0

예 시도했지만 작동하지 않습니다. – zawoad

답변

관련 문제