Я пытаюсь загрузить файл в S3 Bucket с помощью Spring Boot.Загрузка прошла успешно, но сразу после загрузки файла приложение перезапускается.ЭТО МОЙ КОД
ServiceImpl
@Service
public class AmazonS3ClientServiceImpl implements AmazonS3ClientService
{
private AmazonS3 amazonS3;
private static final Logger logger = LoggerFactory.getLogger(AmazonS3ClientServiceImpl.class);
@Autowired
public AmazonS3ClientServiceImpl(Region awsRegion, AWSCredentialsProvider awsCredentialsProvider)
{
this.amazonS3 = AmazonS3ClientBuilder.standard()
.withCredentials(awsCredentialsProvider)
.withRegion(awsRegion.getName()).build();
}
@Async
public void uploadFileToS3Bucket(MultipartFile multipartFile, boolean enablePublicReadAccess,String bucketname)
{
String fileName = multipartFile.getOriginalFilename();
try {
//creating the file in the server (temporarily)
File file = new File(fileName);
FileOutputStream fos = new FileOutputStream(file);
fos.write(multipartFile.getBytes());
fos.close();
PutObjectRequest putObjectRequest = new PutObjectRequest(bucketname, fileName, file);
if (enablePublicReadAccess) {
putObjectRequest.withCannedAcl( CannedAccessControlList.PublicRead);
}
// this.amazonS3.putObject(putObjectRequest);
TransferManager tm = TransferManagerBuilder.standard().withS3Client(this.amazonS3).build();
Transfer transfer = tm.upload(putObjectRequest);
transfer.waitForCompletion();
//removing the file created in the server
file.delete();
} catch (IOException | InterruptedException |AmazonServiceException ex) {
logger.error("error [" + ex.getMessage() + "] occurred while uploading [" + fileName + "] ");
}
}
@Async
public void deleteFileFromS3Bucket(String fileName)
{
try {
amazonS3.deleteObject(new DeleteObjectRequest("scts1545321420734", fileName));
} catch (AmazonServiceException ex) {
logger.error("error [" + ex.getMessage() + "] occurred while removing [" + fileName + "] ");
}
}
@Override
public void createBucket(String bucketname) {
try {
amazonS3.createBucket(bucketname);
}catch(SdkClientException e) {
logger.error("error [" + e.getMessage() + "] occurred while creating bucket ["+ bucketname + "]");
}
}
}
РЕСТОРАН ОТДЫХА
@PostMapping("/supplier-masters/logo")
public ResponseEntity<AgroWebResponse> testLogo(@RequestPart(value = "file") MultipartFile file){
amazonS3ClientService.uploadFileToS3Bucket(file, true, "scts1545321420734");
return CommonWebUtils.successResponse("Uploadaed");
}
ИСКЛЮЧЕНИЕ ДО ПЕРЕЗАГРУЗКИ: InterruptedException