Der SOAP-Fehler (das <Fault>-Element) ist ein Unterelement des SOAP-Hauptteils, das zur Dokumentation von Fehlern verwendet wird.
Falls vorhanden, muss das SOAP-Fehlerelement als Hauptteileintrag angezeigt werden und darf nur einmal in einem Hauptteilelement vorkommen. Die Unterelemente des SOAP-Fehlerelements sind für SOAP 1.1 und SOAP 1.2 unterschiedlich.
SOAP 1.1
In SOAP 1.1 enthält der SOAP-Fehler die folgenden Unterelemente:
- <faultcode>
- Das Element <faultcode> ist ein obligatorisches Element innerhalb des Elements <Fault>. Es stellt Informationen über den Fehler in einer Form bereit, die durch Software verarbeitet werden kann. SOAP definiert eine geringe Zahl an SOAP-Fehlercodes, die die grundlegenden SOAP-Fehler abdecken. Diese Zahl kann durch Anwendungen erweitert werden.
- <faultstring>
- Das Element <faultstring> ist ein obligatorisches Element im Element <Fault> . Es stellt Informationen über den Fehler in lesbarer Form bereit.
- <fault actor>
- Das Element <faultactor> enthält die URI des SOAP-Knotens, der den Fehler verursacht hat. Ein SOAP-Knoten, der nicht der letztendliche SOAP-Empfänger ist, muss das Element <faultactor> einfügen, wenn er einen Fehler erzeugt; der letztendliche SOAP-Empfänger ist nicht zum Einfügen dieses Elements verpflichtet, kann dies aber tun.
- <detail>
- Das Element <detail> überträgt das Element <Body> betreffende, anwendungsspezifische Fehlerinformationen.
Es ist erforderlich, wenn der Inhalt des Elements <Body> nicht erfolgreich verarbeitet wurde. Das Element <detail> darf nicht zur Übertragung von Angaben zu Fehlerinformationen verwendet werden, die Headereinträgen angehören. Detaillierte Fehlerinformationen, die Headereinträgen angehören, müssen in Headereinträgen übertragen werden.
SOAP 1.2
In SOAP 1.2 enthält der SOAP-Fehler die folgenden Unterelemente:
- <Code>
- Das Element <Code> ist ein obligatorisches Element im Element <Fault>. Es stellt Informationen über den Fehler in einer Form bereit, die durch Software verarbeitet werden kann. Es enthält das Element <Value> und das optionale Element <Subcode>.
- <Reason>
- Das Element <Reason> ist ein obligatorisches Element im Element
<Fault>. Es stellt Informationen über den Fehler in lesbarer Form bereit. Das Element <Reason> enthält ein oder mehrere Elemente des Typs <Text>, von denen jedes Informationen über den Fehler in einer anderen Sprache enthält.
- <Knoten>
- Das Element <Node> enthält die URI des SOAP-Knotens, der den Fehler verursacht hat. Ein SOAP-Knoten, der nicht der letztendliche SOAP-Empfänger ist, muss das Element <Node> einfügen, wenn er einen Fehler erzeugt; der letztendliche SOAP-Empfänger ist nicht zum Einfügen dieses Elements verpflichtet, kann dies aber tun.
- <Role>
- Das Element <Role> enthält eine URI, die den Aufgabenbereich angibt, in dem der Knoten beim Auftreten des Fehlers ausgeführt wurde.
- <Detail>
- Das Element <Detail> ist ein optionales Element, das anwendungsspezifische Fehlerinformationen bezüglich der den Fehler beschreibenden SOAP-Fehlercodes enthält. Das Element <Detail> hat, was die Frage betrifft, welche Teile der fehlerhaften SOAP-Nachricht verarbeitet wurden, keine Bedeutung.