тестирование действительно ли встроенная Mina FTPServer началась - PullRequest
1 голос
/ 16 мая 2011

Я программно написал код запуска сервера Apache следующим образом:

public void _start()
{
    String Path = "C:\\Dokumente und Einstellungen\\andjock\\Desktop\\ab";

    File ftpDirectory = new File(Path);
    ftpDirectory.mkdirs(); 


    FtpServerFactory serverFactory = new FtpServerFactory();
    ListenerFactory factory = new ListenerFactory();
    factory.setPort(2221); 

    try {
        serverFactory.addListener("default", factory.createListener());

        PropertiesUserManagerFactory userFactory = new PropertiesUserManagerFactory();
        File userFile = new File("C:\\Dokumente und Einstellungen\\andjock\\Desktop\\ftpusers.properties");
        userFactory.setFile(userFile);


        UserManager um = userFactory.createUserManager();


        BaseUser user = new BaseUser();
        user.setName("myNewUser");
        user.setPassword("secret");
        user.setHomeDirectory(Path);


        um.save(user);

        serverFactory.setUserManager(um);

        FtpServer ftpServer = serverFactory.createServer();
        ftpServer.start();


    } catch (Exception e) {

        Logger  LOGGER = Logger.getLogger(TestapacheFtpServer.class);
        LOGGER.log(Level.FATAL, "Unable to start test ftpserver", e);
    }

Как узнать, что сервер действительно работает?

как я могу получить доступ к этому серверу Apache,снаружи"?

Я пытался использовать telnet и ftp (ftp 127.0.0.1) на моей машине, но я получил:

FTP: соединение: неизвестный код ошибки

у кого-нибудь есть идеи?я просто не хочу полагаться на журнал jvm, а просто протестировать его и получить доступ к запущенному файлу

1 Ответ

2 голосов
/ 18 мая 2011

Я понял это !! я написал клиент, используя клиентскую библиотеку FTP (библиотеку apache commons), чтобы проверить соединение и вывести список файлов; что-то в этом роде

FTPClient ftp = new FTPClient();


    ftp.connect(InetAddress.getLocalHost(), 2221);// or "localhost" in your case
      String loging_success = ftp.login("myNewUser", "secret") == true ? "success" : "failed"; 
      System.out.println("login: "+ loging_success);


      FTPFile[] files = ftp.listFiles();  
      System.out.println("Listed "+files.length+" files.");
      for(FTPFile file : files) {
       System.out.println(file.getName());
      }
...