Ich versuche, eine in meiner Implementierung von StreamingResponseBody ausgelöste Ausnahme abzufangen. Ich kann sehen, dass die Ausnahme innerhalb der Klasse ausgelöst wird, die ausgelöste Ausnahme ist jedoch für den Methodenkörper oder meine Controller-Beratung nicht sichtbar. Daher scheint keine meiner Behandlungen zu funktionieren. Ich möchte nur wissen, wie in diesem Fall mit Ausnahmen richtig umgegangen wird.
Code: Select all
@GetMapping(path = "/test", produces = "application/json")
public StreamingResponseBody test(@RequestParam(value = "var1") final String test)
throws IOException{
return new StreamingResponseBody() {
@Override
public void writeTo(final OutputStream outputStream) throws IOException{
try {
// Some operations..
} catch (final SomeCustomException e) {
throw new IOException(e);
}
}
};
}
Ich würde erwarten, dass mein ControllerAdvice eine ResponseEntity mit einem HTTP-Status von 500 zurückgibt.