FTPSClient.listFiles() не работает для системы NonStop/Tandem

Я пишу небольшой клиент FTPS, который будет загружать файлы Enscribe из NonStop/Tandem и будет обрабатывать их в Windows. Я использую API Apache Commons Net для достижения этой цели.

Я могу загружать и загружать файлы с и на NonStop/Tandem. Но я не могу перечислить файлы и каталоги, используя методы listFiles() и / или mlistDir(), представленные в классе org.apache.commons.net.ftp.FTPClient.

Ниже мой код для перечисления файлов, присутствующих в текущем рабочем каталоге.

FTPSClient client = new FTPSClient(false);
try {
    client.connect(serverAddress, serverPort);
    if (FTPReply.isPositiveCompletion(client.getReplyCode())) {
        if (client.login(userName, passwd)) {
            System.out.println(client.getReplyString());

            // Set protection buffer size
            client.execPBSZ(0);

            // Set data channel protection to private
            client.execPROT("P");

            // Enter local passive mode
            client.enterLocalPassiveMode();

            // Get Current Working Directory
            client.printWorkingDirectory();
            System.out.println(client.getReplyString());

            FTPFile[] files = client.listFiles();

            // Logout
            client.logout();
            System.out.println(client.getReplyString());

        } else {
            System.out.println("Login failed...");
    }

    // Disconnect from Server
    client.disconnect();
    System.out.println("Disconnected from Host...");
    } else {
        System.out.println("Connection to Host failed...");
        System.out.println("Error Code - " + reply);
    }

    } catch (Exception e) {
        e.printStackTrace();
    }

Я получаю следующую ошибку при выполнении кода:

org.apache.commons.net.ftp.parser.ParserInitializationException: Unknown parser type: Nonstop J-series Server : J06.19.
    at org.apache.commons.net.ftp.parser.DefaultFTPFileEntryParserFactory.createFileEntryParser(DefaultFTPFileEntryParserFactory.java:169)
    at org.apache.commons.net.ftp.parser.DefaultFTPFileEntryParserFactory.createFileEntryParser(DefaultFTPFileEntryParserFactory.java:94)
    at org.apache.commons.net.ftp.FTPClient.__createParser(FTPClient.java:3377)
    at org.apache.commons.net.ftp.FTPClient.initiateListParsing(FTPClient.java:3334)
    at org.apache.commons.net.ftp.FTPClient.listFiles(FTPClient.java:3012)
    at org.apache.commons.net.ftp.FTPClient.listFiles(FTPClient.java:3065)
    at com.connect.ssl.FTPSTest.main(FTPSTest.java:57)

Я даже пытался установить конфигурацию FTPClient как UNIX, как показано ниже, но это не помогло.

client.configure(new FTPClientConfig(FTPClientConfig.SYST_UNIX));

Кто-нибудь может мне с этим помочь.

0 ответов

Другие вопросы по тегам