我正在尝试连接到无法通过JSch管理的远程设备,尽管我可以使用具有相同凭据的WinSCP客户端进行连接。
该应用程序是一个基于J2EE的企业应用程序,它在JBoss AS 7.1.1上运行,在Windows服务器上,我正在尝试从Quartz作业连接SFTP服务器。我用来验证SFTP登录的代码如下。
try {
Session session = jsch.getSession("username", "host", 22);
session.setConfig("StrictHostKeyChecking", "no");
session.setPassword("password");
session.connect();
Channel channel = session.openChannel("sftp");
ChannelSftp channelSftp = (ChannelSftp) channel;
channel.connect();
session.disconnect();
channelSftp.disconnect();
} catch (JSchException e) {
log("Cannot make connection to FTP server ");
e.printStackTrace();
}
我正在
com.jcraft.jsch.JSchException:java.net.ConnectException:连接被拒绝:连接
中的异常
session.connect();
我正在使用0.1.50版本的JSch
当我在开发环境中运行此代码时,会发生另一种不一致;我可以使用SFTP连接到服务器。
你能帮我找出这种行为的可能原因吗?
答案 0 :(得分:0)
问题是由于网络的拓扑结构和通信方的权限。如果您遇到同样的问题,请考虑这些问题。