Неуспешно качване на файл чрез FTPClient

Трябва да кача и изтегля файл чрез FTP сървър, но срещам проблеми в него. Прегледах много решения, но нищо не изглежда да работи.

Използвам secureftp-test.com като тестов FTP сървър.

По-долу е кодът за качване, където използвам FTPClient storeFile метод, но изглежда не работи.

public static void main(String[] args) {
    String server = "ftp.secureftp-test.com";
    int port = 21;
    String user = "test";
    String pass = "test";

    FTPClient ftpClient = new FTPClient();
    try {

        ftpClient.connect(server, port);
        boolean login = ftpClient.login(user, pass);
        System.out.println("login " + login);
        ftpClient.setFileTransferMode(FTP.BINARY_FILE_TYPE);
        ftpClient.setFileType(FTP.BINARY_FILE_TYPE);

        File firstLocalFile = new File("D:/jetty.pdf");

        String firstRemoteFile = "myfile.pdf";
        InputStream inputStream = new FileInputStream(firstLocalFile);

        System.out.println("Start uploading first file");
        boolean done = ftpClient.storeFile(firstRemoteFile, inputStream);
        inputStream.close();
        if (done) {
            System.out.println("The first file is uploaded successfully.");
        } else {
            System.out.println("upload failed");
        }

    } catch (IOException ex) {
        System.out.println("Error: " + ex.getMessage());
        ex.printStackTrace();
    } finally {
        try {
            if (ftpClient.isConnected()) {
                ftpClient.logout();
                ftpClient.disconnect();
            }
        } catch (IOException ex) {
            ex.printStackTrace();
        }
    }
}

Всеки път изходът е „неуспешно качване“. Не разбирам къде греша.


person roger_that    schedule 15.04.2013    source източник


Отговори (1)


Вашият порт е неправилен. Той използва:

FTPS via Auth TLS/SSL and implicit FTP over SSL on port 990

Освен това, ако прочетете внимателно сайта, качването е забранено:

Chilkat предоставя този FTPS тестов акаунт за всеки, който желае да тества функционалността на защитен FTP клиент. Можете да се свържете с ftp.secureftp-test.com, да влезете като "test" с парола "test" и да изтеглите всички налични файлове на сървъра. "Тестовият" акаунт може също да извлича списъци с директории. Въпреки това е ограничено да качва файлове на сървъра.

Справка: secureftp-test.com

person Raptor    schedule 15.04.2013
comment
Благодаря на Шиван, че посочи това. Е, има ли друг ftp сървър за тестови цели, който мога да използвам само за извършване на примерно качване и изтегляне? - person roger_that; 15.04.2013
comment
можете да настроите свой собствен FTP сървър, напр. от FileZilla FTP сървър (Windows) или vsFTPd (базиран на Linux) - person Raptor; 15.04.2013