2012-07-02 5 views
1

Я создаю приложение на основе Java. Чтобы загрузить каталог и файлы из него с моего клиента на мой сервер, я использую клиентский Java-апплет, который поддерживает только ftp.Как загрузить каталог с sftp

Как загрузить каталог с файлами sftp и java?

+0

Я хочу предоставить текстовую область на странице jsp, где пользователь может вставить путь к локальному каталогу, который он хочет загрузить, и при нажатии кнопки отправки его каталог загружается, но я хочу использовать sftp, и я уже настроил ftp-сервер на моем сервере машина – ankit

+0

Просто краткая информация о портах. Ftp использует порт 21, SFTP использует 22 по умолчанию [или независимо от того, что sysad настроил его]. См. Http://serverfault.com/questions/74176/what-port-does-sftp-use –

ответ

1

«Только ftp» не будет использовать «sftp». Либо вам нужен sftp-апплет, либо ftp, который включен на вашем сервере.

+0

SFTP - это не только «защищенный FTP». Это совершенно другой протокол. –

+0

Привет, Jean-Philippe Briend, это означает, что сначала мне нужно настроить сервер sftp. и есть ли доступ к java api, чтобы передача каталога/файла могла произойти через sftp – ankit

0

Использование SFTP - хорошая идея, поскольку FTP страдает некоторыми проблемами безопасности.

Вам нужно будет найти классы клиентов SFTP для использования в клиентском апплете Java, который вы предоставите своим пользователям, вместо классов FTP, которые вы используете сейчас.

И вам понадобится установить пакет программного обеспечения сервера SFTP на вашем серверном оборудовании, чтобы ваш клиентский апплет имел что-то, к чему можно было подключиться. (Возможно, у вашего серверного оборудования уже есть этот пакет. В этом случае вам необходимо его активировать и настроить.)

Наконец, вам нужно понять, что SFTP и FTP на самом деле не предлагают примитивную операцию «загрузить каталог «. Вашему клиентскому программному обеспечению Java нужно будет выяснить, как загрузить все файлы в каталог на компьютере пользователя.

+0

Фактически я использую библиотеку zehon (http://www.zehon.com) для загрузки каталога в sftp. и он работает нормально, если я загружаю с локальной машины на локальный сервер sftp, но удаленный пользователь не может загрузить каталог – ankit

+0

Я установил сервер openssh, и я могу загрузить файл с удаленной машины через командную строку. – ankit

0

Я использую JSCH aip (Link) для участия в sftp-приложении. У Jsch нет метода, помогающего выгрузить каталог, вы можете получить весь путь к файлу в каталоге, который хотите загрузить, а затем передать их методу загрузки (put (....) в классе ChannelSftp).

Смежные вопросы