Тайм-аут соединения с библиотекой JschJAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Тайм-аут соединения с библиотекой Jsch

Сообщение Anonymous »

Я реализовал подключение по sftp с помощью библиотеки JSch, но постоянно получаю сообщение об ошибке тайм-аута соединения. Я пробовал увеличить значение тайм-аута, но, похоже, ничего не работает. Однако я могу получить доступ к FTP-сайту с помощью браузера. Мой код выглядит следующим образом:

Код: Выделить всё

public class FileTransfer {
public static void main(String[] args) {
final String hostName = "filetransfer.company.com";
final int port = 22;
final String userName = "user_name";
final String password = "password" ;
JSch jsch = new JSch();
String knowHosts = new StringBuilder().append(System.getProperty("user.home")).append("/.ssh/known_hosts").toString();
System.out.println(knowHosts);
try {
jsch.setKnownHosts(knowHosts);
Session session = jsch.getSession(userName, hostName, port);
System.out.println("session created");
session.setPassword(password);
System.out.println("all properties set "+session.toString());
session.setConfig("StrictHostKeyChecking", "no");
//session.setSocketFactory(new SocketFactoryWithTimeout());
session.connect(60000);
System.out.println("session connected");
Channel channel = session.openChannel("sftp");
channel.connect();
System.out.println("channel created and connected");
ChannelSftp channelSftp = (ChannelSftp) channel;
channelSftp.get("sample_file.csv", "src/main/resources/downloaded_file.csv");
channelSftp.exit();
System.out.println("file download and saved in resource directory");
} catch (JSchException | SftpException e) {
e.printStackTrace();
}
}
}
Я получаю следующую ошибку:

Код: Выделить всё

session created
all properties set com.jcraft.jsch.Session@30f39991
com.jcraft.jsch.JSchException: java.net.ConnectException: Connection timed out: connect
at com.jcraft.jsch.Util.createSocket(Util.java:394)
at com.jcraft.jsch.Session.connect(Session.java:215)
at com.wf.se.ftp.FileTransfer.main(FileTransfer.java:22)
Caused by: java.net.ConnectException: Connection timed out: connect
at java.net.DualStackPlainSocketImpl.connect0(Native Method)
at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:79)
at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350)
at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206)
at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188)
at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:172)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
at java.net.Socket.connect(Socket.java:606)
at java.net.Socket.connect(Socket.java:555)
at java.net.Socket.(Socket.java:451)
at java.net.Socket.(Socket.java:228)
at com.jcraft.jsch.Util$1.run(Util.java:362)
at java.lang.Thread.run(Thread.java:748)
любое предложение будет полезно. спасибо.

Подробнее здесь: https://stackoverflow.com/questions/631 ... ch-library
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»