1
Я использую следующий код для создания ftpSessionfactory -Весенняя интеграция с FTP: как проверить сеанс FTP?
@Bean
@Lazy(false)
public SessionFactory<FTPFile> ftpSessionFactory() {
DefaultFtpSessionFactory sf = new DefaultFtpSessionFactory();
sf.setHost(server);
sf.setPort(port);
sf.setUsername(username);
sf.setPassword(password);
return new CachingSessionFactory<FTPFile>(sf);
}
и следующим способом, чтобы проверить, если FTP-сеанса хорошо -
private boolean isFTPSessionOK() {
try {
SessionFactory<FTPFile> ftpSessionFactory = ftpSessionFactory();
boolean open = ftpSessionFactory.getSession().isOpen();
System.out.println("Session is good ? "+ open);
return open;
} catch (Exception e) {
e.printStackTrace();
}
return false;
}
Есть ли другой способ, чтобы проверить сеанс FTP вместо написания тупой метод?
Благодаря
Абсолютно верно. Спасибо за предоставление этой функции. Однако, если удаленный хост выключен ИЛИ мы передаем неправильный удаленный хост при создании CachingSessionFactory, приложение не сообщает о какой-либо ошибке в журналах, и мы не можем отслеживать, работает ли приложение нормально или нет. Есть ли способ получить уведомление или ошибку в журналах в случае возникновения каких-либо проблем с ftpSession? Пожалуйста, порекомендуйте. – Sushil
Ну, так как 'CachingSessionFactory' работает в режиме ленивой загрузки, на самом деле нет никаких крючков для отслеживания неправильных параметров подключения при запуске. Таким образом, вы определенно должны предоставить механизм, приготовленный на дому, для проверки, когда вам нужно быть уверенным. Итак, ваш метод - хороший кандидат. –