Как имитировать соединение для SFTP-соединенияJAVA

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

Сообщение Anonymous »

Моя программа открывает sftp-соединение и подключается к серверу, чтобы получить файл, который затем обрабатывается.
Я пишу тестовый пример для этого метода, пытаясь имитировать соединение.

Мой настоящий класс:

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

public void getFile() {
Session session = null;
Channel channel = null;
ChannelSftp channelSftp = null;
String path = ftpurl;
try {
JSch jsch = new JSch();
session = jsch.getSession(username, host, port);
session.setConfig("StrictHostKeyChecking", "no");session.setPassword(JaspytPasswordEncryptor.getDecryptedString(jaspytEncryptionKey, jaspytEncryptionAlgorithm, password));

session.connect();
channel = session.openChannel("sftp");
channel.connect();
channelSftp = (ChannelSftp) channel;

channelSftp.cd(path);

Vector list = channelSftp.ls("*.csv");
for (ChannelSftp.LsEntry entry : list) {
if (entry.getFilename().startsWith("A...")) {
findByFileName(entry.getFilename());
}
}
channelSftp.exit();
session.disconnect();
} catch (JSchException e) {
LOGGER.error("JSch exception"+e);
} catch (SftpException e) {
LOGGER.error("Sftp Exception"+e);
}
}
Тестовый класс:

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

@Test
public void getNamesTestValid() throws IOException, JSchException {
JSch jsch = new JSch();

Hashtable config = new Hashtable();
config.put("StrictHostKeyChecking", "no");
JSch.setConfig(config);

Session session = jsch.getSession( "remote-username", "localhost", 22999);
session.setPassword("remote-password");

session.connect();

Channel channel = session.openChannel( "sftp" );
channel.connect();

ChannelSftp sftpChannel = (ChannelSftp) channel;
Mockito.when(fileRepository.findByFileName(fileName)).thenReturn(fileDetail);
scheduler.getCSVFileNames();
}
При попытке имитировать соединение он ищет фактический порт и выдает ошибку: порт недействителен, соединение отклонено.
Я хочу только имитировать соединение.
Другое мое сомнение связано с тем, что после насмешки над соединением мне следует читать подробности файла.

Подробнее здесь: https://stackoverflow.com/questions/561 ... connection
Ответить

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

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

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

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

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