Wie gehe ich mit HttpServerErrorException um?Java

Java-Forum
Anonymous
 Wie gehe ich mit HttpServerErrorException um?

Post by Anonymous »

Ich verwende derzeit Java und Spring Boot, um eine Autorisierung in einer API zu erhalten. Es hängt von dem Wert ab, den der Benutzer eingibt, um zu sehen, ob die API gültig ist oder nicht. Wenn sie gültig ist, werden grundsätzlich Daten angezeigt.

Hauptproblem

Wenn der Benutzer am Ende der API einen falschen Wert eingibt. Ich erhalte den Fehler 500 „interner Serverfehler“ und meine Spring-Anwendung wird gestoppt. Ich möchte eine Ausnahme erstellen, die diesen Fehler abfängt und ausspuckt, dass ein Fehler 500 vorliegt, anstatt meine Anwendung zu stoppen. Auch bei einem falschen Wert möchte ich, dass meine Anwendung weiter ausgeführt wird.

Fehler

Wenn Benutzer die falschen Parameter eingeben, erhalte ich unten eine Fehlermeldung

Code: Select all

 org.springframework.web.client.HttpServerErrorException: 500 Internal Server Error
Wie kann ich es überschreiben, damit meine Anwendung auch dann nicht unterbrochen wird, wenn der Benutzer falsche Daten eingibt, und sie weiter ausgeführt wird? Zeigen Sie einfach Null für Daten an.

Versuch, damit umzugehen

Ich konnte zulassen, dass meine Anwendung mit dem folgenden Code weiter ausgeführt wird

Code: Select all

try {  //OauthRestTemplate exhanges credentials for api access
} catch (HttpServerErrorException e ) {
e.getStatusCode();
logger.info(e + "Server bypass, Continue running application");
//allow application to continue running but does not display the actual message that would be on the api.
}
//output
org.springframework.web.client.HttpServerErrorException: 500 Internal Server ErrorServer bypass, Continue running application
Aber ich möchte, dass der Status 500 umgangen wird und die tatsächliche Meldung angezeigt wird, wenn ich mich mit falschen Parametern auf der API befinde. Ich sollte die gleichen Werte erhalten, die auf der API gedruckt werden. Beispiel unten

Code: Select all

{"message":"Physical resource does not exist for mac address: D","code":"APRO-2001","timestamp":1490895756655,"type":"com.server.camp.framework.exception.ErrorResponse","status":"INTERNAL_SERVER_ERROR"}

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post