#java #servlets #ftp
#java #сервлеты #ftp
Вопрос:
Я хочу показать список файлов, доступных на ftp-сервере я работаю с некоторым демонстрационным FTP-сервером, но он не работает, он показывает некоторую ошибку, я должен получить список всех файлов, доступных на ftp-сервере вот код
public class getFTPfileList {
public static void main(String[] args) {
FTPClient client = new FTPClient();
try {
client.connect("ftp.javacodegeeks.com");
client.login("username", "password");
FTPFile[] files = client.listFiles();
for (FTPFile ftpFile : files) {
if (ftpFile.getType() == FTPFile.FILE_TYPE) {
System.out.println("File: "
ftpFile.getName()
"size-> "
FileUtils.byteCountToDisplaySize(ftpFile
.getSize()));
}
}
client.logout();
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
client.disconnect();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
Сообщение об ошибке, показывающее:
java.net.UnknownHostException: ftp.javacodegeeks.com
at java.net.Inet6AddressImpl.lookupAllHostAddr(Native Method)
at java.net.InetAddress$1.lookupAllHostAddr(Unknown Source)
at java.net.InetAddress.getAddressesFromNameService(Unknown Source)
at java.net.InetAddress.getAllByName0(Unknown Source)
at java.net.InetAddress.getAllByName(Unknown Source)
at java.net.InetAddress.getAllByName(Unknown Source)
at java.net.InetAddress.getByName(Unknown Source)
at org.apache.commons.net.SocketClient.connect(SocketClient.java:184)
at org.apache.commons.net.SocketClient.connect(SocketClient.java:273)
at com.journaldev.servlet.getFTPfileList.main(getFTPfileList.java:21)
Комментарии:
1. он показывает какую-то ошибку , какую ошибку???
2. Где находятся строки ошибок, которые вы получили?
3. Верны ли учетные данные? Пожалуйста, предоставьте дополнительную информацию о проблеме
4. теперь я не могу перейти на live host, у меня есть только это, которое я нашел на каком-то веб-сайте, поэтому, вероятно, учетные данные верны..
5. можете ли вы выполнить пинг ftp.javacodegeeks.com с компьютера разработчика? кажется, что хост недоступен. вы также можете попробовать с IP-адресом
Ответ №1:
Кажется, что ваш FTP-хост либо недоступен, либо имя хоста неверно и не разрешено как имя хоста.
Смотрите здесь: SocketClient#connect(строковое имя хоста)
Примечание: попробуйте использовать IP-адрес хост-сервера и пропингуйте его, чтобы проверить, открыт он или нет.