Partage via


SoapException Classe

Définition

Représente l’exception levée lorsqu’une méthode de service Web XML est appelée via 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 une SoapException où la méthode de service Web XML définit la propriété Detail.

<%@ 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

L'SoapException peut être levée par le Common Language Runtime ou par une méthode de service Web XML. Le Common Language Runtime peut lever une 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 SoapException en lèvent 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 une nouvelle SoapException. La SoapException levée 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 une SoapException lorsque les clients appellent à l’aide de SOAP. Si un service Web XML lève l'SoapException, d’autres détails peuvent être ajoutés via l'Actor, Code et les propriétés Detail qui ne peuvent pas ê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, Exception)

Initialise une nouvelle instance de la classe SoapException avec le message d’exception, le code d’exception et la référence à la cause racine de l’exception.

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, Exception)

Initialise une nouvelle instance de la classe SoapException avec le message d’exception, le code d’exception, l’URI qui identifie le code qui a provoqué l’exception et fait référence à la cause racine de l’exception.

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

Initialise une nouvelle instance de la classe SoapException avec le message d’exception, le code d’exception, l’URI qui identifie l’élément de code qui a provoqué l’exception, l’URI qui représente la fonction du service Web XML lors du traitement du message SOAP, le langage humain associé à l’exception, les informations d’exception spécifiques à l’application, le sous-code de l’erreur SOAP et la référence à la cause racine de l’exception.

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

Initialise une nouvelle instance de la classe SoapException avec le message d’exception, le code d’exception, l’URI spécifié qui identifie l’élément de code qui a provoqué l’exception, les informations d’exception spécifiques à l’application et référence à la cause racine de l’exception.

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

Initialise une nouvelle instance de la classe SoapException avec le message d’exception, le code d’exception, l’URI spécifié qui identifie l’élément de code qui a provoqué l’exception, les informations d’exception spécifiques à l’application et référence à la cause racine de l’exception.

SoapException(String, XmlQualifiedName, String, XmlNode)

Initialise une nouvelle instance de la classe SoapException avec le message d’exception, le code d’exception, l’URI spécifié qui identifie l’élément de code qui a provoqué l’exception et les informations d’exception spécifiques à l’application.

SoapException(String, XmlQualifiedName, String)

Initialise une nouvelle instance de la classe SoapException avec le message d’exception, le code d’exception et l’URI spécifiés qui identifie l’élément de code qui a provoqué l’exception.

SoapException(String, XmlQualifiedName)

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

Champs

ClientFaultCode

Spécifie un code d’erreur SOAP qui représente un appel client qui n’est pas correctement mis en forme ou 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

Code d’erreur SOAP qui représente un élément SOAP marqué avec l’attribut MustUnderstand n’a pas été traité.

ServerFaultCode

Spécifie qu’un code d’erreur SOAP qui représente une erreur s’est produite pendant le traitement d’un appel client sur le serveur, où le problème n’est pas dû au contenu du message.

VersionMismatchFaultCode

Un code d’erreur SOAP qui représente un espace de noms non valide pour une enveloppe SOAP a été trouvé pendant le traitement du message SOAP.

Propriétés

Actor

Obtient l’élément de code qui a provoqué l’exception.

Code

Obtient le type de code d’erreur SOAP.

Data

Obtient une collection de paires clé/valeur qui fournissent des informations supplémentaires définies par l’utilisateur 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 affecté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é à l’exception.

Message

Obtient un message qui décrit l’exception actuelle.

(Hérité de Exception)
Node

Obtient un URI qui représente l’élément de code qui a provoqué l’exception.

Role

Obtient un URI qui représente la fonction du service Web XML lors du traitement du message SOAP.

Source

Obtient ou définit le nom de l’application ou de l’objet qui provoque l’erreur.

(Hérité de Exception)
StackTrace

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

(Hérité de Exception)
SubCode

Obtient les informations d’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 la cause racine d’une ou plusieurs exceptions ultérieures.

(Hérité de Exception)
GetHashCode()

Sert de fonction de hachage par défaut.

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

Définit le SerializationInfo avec des informations sur l’exception.

GetObjectData(SerializationInfo, StreamingContext)
Obsolète.

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

(Hérité de Exception)
GetType()

Obtient le type d’exécution de l’instance actuelle.

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

Retourne une valeur qui indique si le code d’erreur SOAP équivaut au code d’erreur SOAP Client quelle que soit la version du protocole SOAP utilisé.

IsMustUnderstandFaultCode(XmlQualifiedName)

Retourne une valeur qui indique si le code d’erreur SOAP équivaut à MustUnderstand quelle que soit la version du protocole SOAP utilisé.

IsServerFaultCode(XmlQualifiedName)

Retourne une valeur qui indique si le code d’erreur SOAP équivaut au code d’erreur SOAP Server quelle que soit la version du protocole SOAP utilisé.

IsVersionMismatchFaultCode(XmlQualifiedName)

Retourne une valeur qui indique si le code d’erreur SOAP équivaut au code d’erreur SOAP VersionMismatch quelle que soit la version du protocole SOAP utilisé.

MemberwiseClone()

Crée une copie superficielle du Objectactuel.

(Hérité de Object)
ToString()

Crée et retourne une représentation sous forme de chaîne de l’exception actuelle.

(Hérité de Exception)

Événements

SerializeObjectState
Obsolète.

Se produit lorsqu’une exception est sérialisée pour créer un objet d’état d’exception qui contient des données sérialisées sur l’exception.

(Hérité de Exception)

S’applique à