У меня есть конечная точка REST, написанная с использованием Джерси, которая выглядит следующим образом: я пытаюсь загрузить файл Excel и прочитать его содержимое с помощью Apache POI
@Path("/batch")
@POST
@Consumes(MediaType.MULTIPART_FORM_DATA)
@Produces(MediaType.APPLICATION_JSON)
public Response batchUploadAssets(@HeaderParam(HttpHeaders.AUTHORIZATION) final String authorizationHeader,
@HeaderParam(CustomVamsHeaders.ORGANISATION) final Integer vamsOrg,
final FormDataMultiPart formDataMultiPart,
@Context final ContainerRequestContext request) {
BodyPart bodyPart = formDataMultiPart.getBodyParts().get(0);
final BodyPartEntity entity = (BodyPartEntity) bodyPart.getEntity();
InputStream inputStream = entity.getInputStream();
XSSFWorkbook workbook = new XSSFWorkbook(inputStream); -> This line throws the exception below
}
Exception StackTrace
java.util.zip.ZipException: invalid stored block lengths
at org.apache.commons.compress.archivers.zip.ZipArchiveInputStream.readFromInflater(ZipArchiveInputStream.java:586)
at org.apache.commons.compress.archivers.zip.ZipArchiveInputStream.readDeflated(ZipArchiveInputStream.java:551)
at org.apache.commons.compress.archivers.zip.ZipArchiveInputStream.read(ZipArchiveInputStream.java:458)
at java.io.FilterInputStream.read(FilterInputStream.java:133)
at org.apache.poi.openxml4j.util.ZipArchiveThresholdInputStream.read(ZipArchiveThresholdInputStream.java:78)
.......
.......
at org.apache.poi.xssf.usermodel.XSSFWorkbook.<init>(XSSFWorkbook.java:307)
Работает нормально, когда я запускаю свое приложение на локальном экземпляре tomcat. Однако когда я развертываю свое приложение в экземпляре EC2 и получаю к нему доступ через AWS API Gateway, именно тогда я получаю эту ошибку. Есть идеи, что мне нужно делать по-другому?