Я пытаюсь создать дополнительный класс, который позаботился бы о подключении и статусе пользователя, но я все еще получаю странную ошибку, которую я не понимаю.
Это мое ´FTPConnection Класс Я создал частный ftpClient с помощью DI (у меня есть аннотация @Bean в основном классе), и я пытаюсь подключиться к серверу, используя этот метод из другого класса
@Autowired
private FTPClient ftpClient;
public void connect() {
try {
ftpClient.connect("host");
ftpClient.login("username", "password");
int reply = ftpClient.getReplyCode();
if (!FTPReply.isPositiveCompletion(reply)) {
ftpClient.disconnect();
System.err.println("FTP server refused connection.");
System.exit(1);
}
}
catch (IOException ex) {
System.out.println(ex.getMessage());
}
}
И это класс с методами RequestMapping
@PostMapping("/uploadFile")
public void uploadFile(@RequestParam("file") MultipartFile file) {
var connection = new FTPConnection();
try {
connection.connect();
System.out.println(connection.isConnected());
FTPClient ftpClient = connection.getFtpClient();
ftpClient.changeWorkingDirectory("/usb");
ftpClient.setFileType(FTP.BINARY_FILE_TYPE);
[...]
И ошибка, которую я получаю:
Servlet.service () для сервлета [dispatcherServlet] в контексте с путем [] вызвала исключение [Ошибка обработки запроса; вложенное исключение - java .lang.NullPointerException] с root java .lang.NullPointerException: пусто в com.tenpetr.FTPFileUploader.FTPConnection.connect (FTPConnection. java: 16) ~ [main /: na] в com.tenpetr.FTPFileUploader.FileTransfer.uploadFile (FileTransfer. java: 29) ~ [main /: na] в java .base / jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (собственный метод) ~ [na: na] at java .base / jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl. java: 62) ...
У вас есть идеи, почему я застрял здесь ? Спасибо за ваши советы.