JDK 17, Spring Boot-Version 3.2.5. Die Datei lesen und in die Antwort streamen. Angabe von 0-Byte-DatenJava

Java-Forum
Guest
 JDK 17, Spring Boot-Version 3.2.5. Die Datei lesen und in die Antwort streamen. Angabe von 0-Byte-Daten

Post by Guest »

JDK 17, Spring Boot Version 3.2.5. Die Datei lesen und in die Antwort streamen. Gibt 0-Byte-Daten an. Hier sind die Codedetails:-

Code: Select all

File file = new File(filePath);
//Added permission for file path
file.setExecutable(false);
file.setReadable(true);
file.setWritable(true);

// Create StreamingResponseBody
StreamingResponseBody responseBody = outputStream -> {
// Read file content
Path path = Paths.get(filePath);
byte[] data = Files.readAllBytes(path);
try (InputStream inputStream = new ByteArrayInputStream(data)) {
byte[] buffer = new byte[4096];
int bytesRead;
while ((bytesRead = inputStream.read(buffer)) != -1) {
outputStream.write(buffer, 0, bytesRead);
}
} catch (IOException e) {
throw new RuntimeException("Error streaming PDF", e);
} finally {
deleteUserPrintDir(filePath, file);
data=null;
path=null;
}
};

return ResponseEntity.ok().header("Content-Disposition",
"attachment; fileName=\"" + file.getName() + "\"")
.contentType(org.springframework.http.MediaType.APPLICATION_PDF)
.body(responseBody);
0 kb als Antwort geben. Vielen Dank im Voraus, wenn jemand dabei helfen kann. Es gibt eine Antwort von 200, aber auf Postman wird der Fehler beim Laden der Datei angezeigt.

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post