Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 11.0.1 (Deutsch) » SQL Anywhere Server - Programmierung » SQL Anywhere Datenzugriff-APIs » SQL Anywhere-Webdienste

 

Fehlerbehandlung

Wenn Webdienstanforderungen fehlschlagen, generiert der Datenbankserver Standardfehlermeldungen, die im Browser angezeigt werden. Den Fehlern sind Nummern zugeordnet, die mit den Protokollstandards übereinstimmen.

Wenn der Dienst ein SOAP-Dienst ist, werden Fehler an den Client als SOAP-Fehler zurückgegeben, wie im Standard von SOAP Version 1.1 definiert:

  • Wenn ein Fehler in der Anwendung auftritt, die die Anforderung verarbeitet, generiert die Anforderung einen SQLCODE und es wird ein SOAP-Fehler mit dem Fehlercode (faultcode) des Clients zurückgegeben, möglicherweise mit einer Unterkategorie, wie etwa "Procedure". Das faultstring-Element innerhalb des SOAP-Fehlers wird auf eine detaillierte Erklärung des Fehlers festgelegt und ein detail-Element enthält den nummerischen SQLCODE-Wert.

  • Im Fall eines Transportprotokollfehlers wird der faultcode-Fehlercode auf Client oder auf Server gesetzt, abhängig vom Fehler. Die faultstring-Fehlerzeichenfolge wird auf die HTTP-Transportmeldung gesetzt, wie z.B. 404 Not Found, und das detail-Element enthält den nummerischen HTTP-Fehlercode.

  • SOAP-Fehlermeldungen, die aufgrund von Anwendungsfehlern generiert werden, die einen SQLCODE-Wert zurückgeben, werden mit dem HTTP-Status 200 OK zurückgegeben.

Wenn der Client nicht als SOAP-Client identifiziert werden kann, wird der entsprechende HTTP-Fehler in einem generierten HTML-Dokument zurückgegeben.

Im Folgenden sind einige der Fehler aufgeführt, die häufig auftreten:

Nummer Name SOAP-Fehler Beschreibung
301 Seite dauerhaft an anderer Stelle Server Die angeforderte Seite ist dauerhaft an eine andere Stelle verschoben worden. Der Server leitet die Anforderung automatisch an den neuen Standort um.
304 Seite nicht geändert Server Der Server hat aufgrund von Informationen in der Anforderung entschieden, dass die angeforderten Daten seit der letzten Anforderung nicht geändert wurden. Es ist daher nicht nötig, sie neuerlich zu senden.
307 Seite temporär umgeleitet Server Die angeforderte Seite ist verschoben worden, aber diese Änderung ist möglicherweise nicht permanent. Der Server leitet die Anforderung automatisch an den neuen Standort um.
400 Ungültige Abfrage Client.BadRequest

Die HTTP-Abfrage ist nicht vollständig oder falsch formuliert.

401 Authentifizierung fehlt/ungültig Client.Authorization

Um diesen Dienst nutzen zu können, ist eine Authentifizierung erforderlich. Es wurde jedoch kein gültiger Benutzername und kein gültiges Kennwort angegeben.

403 Verboten Client.Forbidden

Sie verfügen nicht über die Berechtigung, auf diese Datenbank zuzugreifen.

404 Seite nicht gefunden Client.NotFound

Die angegebene Datenbank wird auf dem Server nicht ausgeführt oder der angegebene Webdienst ist nicht vorhanden.

408 Zeitüberschreitung durch Anwenderprogramm Server.RequestTimeout

Die für Verbindungen maximal zulässige Leerlaufzeit wurde beim Empfangen der Anfrage überschritten.

411 HTTP-Länge erforderlich Client.LengthRequired Der Server erfordert, dass der Client eine Inhaltslängen-Angabe in die Anforderung aufnimmt. Dies tritt üblicherweise beim Übertragen von Daten auf den Server auf.
413 Abfrageentität zu groß Server

Die Abfrage überschreitet die maximal zulässige Größe.

414 Abfrage-URI zu groß Server

Die Länge des URIs überschreitet die maximal zulässige Länge.

500 Interner Serverfehler Server

Ein interner Serverfehler ist aufgetreten. Die Anfrage konnte nicht verarbeitet werden.

501 Nicht implementiert Server

Die HTTP-Abfragemethode ist keine GET-, HEAD- oder POST-Methode.

502 Fehlerhaftes Gateway Server Das angeforderte Dokument residiert auf einem Server eines Drittanbieters, und der Server empfing einen Fehler von diesem Server eines Drittanbieters.
503 Dienst nicht verfügbar Server

Die Anzahl der Verbindungen überschreitet das zulässige Maximum.