Partager via


SoapException Classe

Définition

Représente l'exception levée lorsqu'une méthode de service Web XML est appelée via le protocole SOAP et qu'une exception se produit.

public ref class SoapException : SystemException
public class SoapException : SystemException
[System.Serializable]
public class SoapException : SystemException
type SoapException = class
    inherit SystemException
[<System.Serializable>]
type SoapException = class
    inherit SystemException
Public Class SoapException
Inherits SystemException
Héritage
Dérivé
Attributs

Exemples

L’exemple suivant lève un SoapException où la méthode de service Web XML définit la Detail propriété .

<%@ WebService Language="C#" class="ThrowSoapException"%>

using System;
using System.Web.Services;
using System.Web.Services.Protocols;
using System.Xml.Serialization;
using System.Xml;

public class ThrowSoapException : WebService 
{
//    This XML Web service method generates a SOAP Client Fault code 
    [WebMethod]
    public void myThrow(){

        // Build the detail element of the SOAP fault.
        System.Xml.XmlDocument doc = new System.Xml.XmlDocument();
        System.Xml.XmlNode node = doc.CreateNode(XmlNodeType.Element, SoapException.DetailElementName.Name, SoapException.DetailElementName.Namespace);


        // Build specific details for the SoapException.
        // Add first child of detail XML element.
        System.Xml.XmlNode details = doc.CreateNode(XmlNodeType.Element, "mySpecialInfo1", "http://tempuri.org/");
        System.Xml.XmlNode detailsChild = doc.CreateNode(XmlNodeType.Element, "childOfSpecialInfo", "http://tempuri.org/");
        details.AppendChild(detailsChild);

            
        // Add second child of detail XML element with an attribute.
        System.Xml.XmlNode details2 = doc.CreateNode(XmlNodeType.Element, "mySpecialInfo2", "http://tempuri.org/");
        XmlAttribute attr = doc.CreateAttribute("t", "attrName", "http://tempuri.org/");
        attr.Value = "attrValue";
        details2.Attributes.Append(attr);

        // Append the two child elements to the detail node.
        node.AppendChild(details);
        node.AppendChild(details2);

            
        //Throw the exception.    
        SoapException se = new SoapException("Fault occurred", SoapException.ClientFaultCode,Context.Request.Url.AbsoluteUri,node);

        throw se;
        return;    }
}
<%@ WebService Language="VB" class="ThrowSoapException"%>

Imports System
Imports System.Web.Services
Imports System.Web.Services.Protocols
Imports System.Xml.Serialization
Imports System.Xml

Public Class ThrowSoapException
    Inherits WebService
    
    ' This XML Web service method generates a SOAP Client Fault code 
    <WebMethod()> _
    Public Sub myThrow()
        
        ' Build the detail element of the SOAP fault.
        Dim doc As New System.Xml.XmlDocument()
        Dim node As System.Xml.XmlNode = doc.CreateNode(XmlNodeType.Element, _
            SoapException.DetailElementName.Name, _
            SoapException.DetailElementName.Namespace)
 
        ' Build specific details for the SoapException.
        ' Add first child of detail XML element.
        Dim details As System.Xml.XmlNode = doc.CreateNode(XmlNodeType.Element, _
            "mySpecialInfo1", "http://tempuri.org/")

        ' Add second child of detail XML element with an attribute.
        Dim details2 As System.Xml.XmlNode = doc.CreateNode(XmlNodeType.Element, _
            "mySpecialInfo2", "http://tempuri.org/")
        Dim attr As XmlAttribute = doc.CreateAttribute("t", "attrName", _
            "http://tempuri.org/")
        attr.Value = "attrValue"
        details2.Attributes.Append(attr)

        ' Append the two child elements to the detail node.
        node.AppendChild(details)
        node.AppendChild(details2)
                
        'Throw the exception    
        Dim se As New SoapException("Fault occurred", SoapException.ClientFaultCode, _
                                    Context.Request.Url.AbsoluteUri, node)
        Throw se
        Return
    End Sub
End Class

Remarques

Peut SoapException être levée par le Common Language Runtime ou par une méthode de service Web XML. Le Common Language Runtime peut lever un SoapException si une réponse à une demande n’est pas correctement mise en forme. Les méthodes de service Web XML peuvent générer un en SoapException levant simplement une exception dans la méthode de service Web XML. Si le client a accédé à la méthode via SOAP, l’exception est interceptée sur le serveur et encapsulée dans un nouveau SoapException. Le SoapException thrown a les valeurs de propriété suivantes :

Propriété Valeur
Message Propriété Message de l’exception d’origine.
Code ServerFaultCode.
Actor URL de la méthode de service Web XML.
Detail null, mais un élément de détail vide est présent dans l’élément d’erreur.

Une méthode de service Web XML peut lever un SoapException lorsque les clients appellent à l’aide de SOAP. Si un service Web XML lève le SoapException, d’autres détails peuvent être ajoutés via les Actorpropriétés et CodeDetail qui ne peuvent pas autrement être définies par une méthode de service Web XML si un autre type d’exception est levée.

Constructeurs

SoapException()

Initialise une nouvelle instance de la classe SoapException.

SoapException(SerializationInfo, StreamingContext)

Initialise une nouvelle instance de la classe SoapException avec des données sérialisées.

SoapException(String, XmlQualifiedName)

Initialise une nouvelle instance de la classe SoapException avec le message et le code de l'exception spécifiés.

SoapException(String, XmlQualifiedName, Exception)

Initialise une nouvelle instance de la classe SoapException avec le message de l'exception, le code de l'exception et une référence à la cause première de l'exception spécifiés.

SoapException(String, XmlQualifiedName, SoapFaultSubCode)

Initialise une nouvelle instance de la classe SoapException avec le message d’exception, le code d’exception et le sous-code spécifiés.

SoapException(String, XmlQualifiedName, String)

Initialise une nouvelle instance de la classe SoapException avec le message de l'exception et le code de l'exception spécifiés ainsi que l'URI identifiant la partie du code à l'origine de l'exception.

SoapException(String, XmlQualifiedName, String, Exception)

Initialise une nouvelle instance de la classe SoapException avec le message de l'exception, le code de l'exception, l'URI identifiant le code à l'origine de l'exception et une référence à la cause première de l'exception.

SoapException(String, XmlQualifiedName, String, String, String, XmlNode, SoapFaultSubCode, Exception)

Initialise une nouvelle instance de la classe SoapException avec les éléments spécifiés suivants : message d’exception, code d’exception, URI identifiant la partie du code ayant provoqué l’exception, URI représentant la fonction du service web XML dans le traitement du message SOAP, langage humain associé à l’exception, informations sur l’exception spécifiques à l’application, sous-code pour l’erreur SOAP et référence à la cause première de l’exception.

SoapException(String, XmlQualifiedName, String, String, XmlNode, SoapFaultSubCode, Exception)

Initialise une nouvelle instance de la classe SoapException avec le message de l’exception, le code de l’exception, l’URI identifiant la partie du code à l’origine de l’exception, des informations relatives à l’exception spécifiques à l’application et une référence à la cause racine de l’exception spécifiés.

SoapException(String, XmlQualifiedName, String, XmlNode)

Initialise une nouvelle instance de la classe SoapException avec le message de l'exception et le code de l'exception spécifiés ainsi que l'URI identifiant la partie du code à l'origine de l'exception et des informations relatives à l'exception spécifiques à l'application.

SoapException(String, XmlQualifiedName, String, XmlNode, Exception)

Initialise une nouvelle instance de la classe SoapException avec le message de l’exception, le code de l’exception, l’URI identifiant la partie du code à l’origine de l’exception, des informations relatives à l’exception spécifiques à l’application et une référence à la cause racine de l’exception spécifiés.

Champs

ClientFaultCode

Spécifie un code d'erreur SOAP qui représente un appel client dont le format n'est pas correct ou qui ne contient pas les informations appropriées.

DetailElementName

Obtient un XmlQualifiedName qui représente l'élément Detail d'un code d'erreur SOAP.

MustUnderstandFaultCode

Un code d'erreur SOAP représentant un élément SOAP marqué par l'attribut MustUnderstand n'a pas été traité.

ServerFaultCode

Spécifie un code d'erreur SOAP représentant une erreur qui s'est produite pendant le traitement d'un appel client sur le serveur mais qui n'est pas liée au contenu du message.

VersionMismatchFaultCode

Un code d'erreur SOAP représentant un espace de noms non valide pour un élément SOAP Envelope a été détecté pendant le traitement du message SOAP.

Propriétés

Actor

Obtient la partie du code qui a provoqué l'exception.

Code

Obtient le type du code d'erreur SOAP.

Data

Obtient une collection de paires clé/valeur qui fournissent des informations définies par l'utilisateur supplémentaires sur l'exception.

(Hérité de Exception)
Detail

Obtient un XmlNode qui représente les informations d'erreur spécifiques à l'application.

HelpLink

Obtient ou définit un lien vers le fichier d'aide associé à cette exception.

(Hérité de Exception)
HResult

Obtient ou définit HRESULT, valeur numérique codée qui est assignée à une exception spécifique.

(Hérité de Exception)
InnerException

Obtient l'instance Exception qui a provoqué l'exception actuelle.

(Hérité de Exception)
Lang

Obtient le langage humain associé à cette exception.

Message

Obtient un message qui décrit l'exception active.

(Hérité de Exception)
Node

Obtient un URI qui représente la partie du code ayant provoqué l'exception.

Role

Obtient un URI représentant la fonction du service Web XML dans le traitement du message SOAP.

Source

Obtient ou définit le nom de l'application ou de l'objet qui est à l'origine de l'erreur.

(Hérité de Exception)
StackTrace

Obtient une représentation sous forme de chaîne des frames immédiats sur la pile des appels.

(Hérité de Exception)
SubCode

Obtient les informations sur l’erreur facultatives contenues dans l’élément XML subcode d’une erreur SOAP.

TargetSite

Obtient la méthode qui lève l'exception actuelle.

(Hérité de Exception)

Méthodes

Equals(Object)

Détermine si l'objet spécifié est égal à l'objet actuel.

(Hérité de Object)
GetBaseException()

En cas de substitution dans une classe dérivée, retourne la Exception qui est à l'origine d'une ou de plusieurs exceptions ultérieures.

(Hérité de Exception)
GetHashCode()

Fait office de fonction de hachage par défaut.

(Hérité de Object)
GetObjectData(SerializationInfo, StreamingContext)

Définit SerializationInfo avec des informations concernant l'exception.

GetObjectData(SerializationInfo, StreamingContext)
Obsolète.

En cas de substitution dans une classe dérivée, définit SerializationInfo avec des informations sur l'exception.

(Hérité de Exception)
GetType()

Obtient le type au moment de l'exécution de l'instance actuelle.

(Hérité de Exception)
IsClientFaultCode(XmlQualifiedName)

Retourne une valeur indiquant si le code d'erreur SOAP est équivalent au code d'erreur SOAP Client, quelle que soit la version du protocole SOAP utilisée.

IsMustUnderstandFaultCode(XmlQualifiedName)

Retourne une valeur indiquant si le code d'erreur SOAP est équivalent à MustUnderstand, quelle que soit la version du protocole SOAP utilisée.

IsServerFaultCode(XmlQualifiedName)

Retourne une valeur indiquant si le code d'erreur SOAP est équivalent au code d'erreur SOAP Server, quelle que soit la version du protocole SOAP utilisée.

IsVersionMismatchFaultCode(XmlQualifiedName)

Retourne une valeur indiquant si le code d'erreur SOAP est équivalent au code d'erreur SOAP VersionMismatch, quelle que soit la version du protocole SOAP utilisée.

MemberwiseClone()

Crée une copie superficielle du Object actuel.

(Hérité de Object)
ToString()

Crée et retourne une chaîne représentant l'exception actuelle.

(Hérité de Exception)

Événements

SerializeObjectState
Obsolète.

Se produit quand une exception est sérialisée pour créer un objet d'état d'exception qui contient des données sérialisées concernant l'exception.

(Hérité de Exception)

S’applique à