IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Services Web Discussion :

[.NET REMOTING] comment recuperer sur le client, une exception lancée sur le serveur?


Sujet :

Services Web

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Août 2005
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 14
    Points : 12
    Points
    12
    Par défaut [.NET REMOTING] comment recuperer sur le client, une exception lancée sur le serveur?
    Bonjour,

    J'ai suivit les articles sur le sujet mais n'arrive toujours pas à récuperer mon exception coté client

    Interface :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
     
    Public Interface ITest
        Sub testException() As Integer
    End Interface
     
    'classe d'exception
    <Serializable()> _
    Public Class PersoException
        Inherits System.Runtime.Remoting.RemotingException
     
        Public Sub New()
            MyBase.New()
        End Sub
     
        Public Sub New(ByVal info As System.Runtime.Serialization.SerializationInfo, ByVal ctx As System.Runtime.Serialization.StreamingContext)
            MyBase.New(info, ctx)
        End Sub
     
        Public Sub New(ByVal msg As String)
            MyBase.New(msg)
        End Sub
     
     
        Public Overrides Sub GetObjectData(ByVal info As System.Runtime.Serialization.SerializationInfo, ByVal context As System.Runtime.Serialization.StreamingContext)
            MyBase.GetObjectData(info, context)
        End Sub
    End Class
    Serveur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    Public Class Test
        Inherits MarshalByRefObject
        Implements ITest
     
        Public Sub testException() As Integer Implements Interface.ITest.testException
            Throw New PersoException("test") 'exception a recup sur le client
        End Sub
    End Class
    Client (apres instanciation de l'objet) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    Try
        objTest.testException
    Catch ex As PersoException
        MsgBox("Exception recuperee : " & ex.Message)
    End Try
    l'exception n'est pas recuperée sur le client, ce message s'affiche dans le debugger : "l'exception ExceptionPerso n'a pas été gérée par le code utilisateur".

    Des idées?

  2. #2
    Membre à l'essai
    Profil pro
    Inscrit en
    Août 2005
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 14
    Points : 12
    Points
    12
    Par défaut
    personne ne sait? quelqu'un sait au moins si c'est possible?

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Juin 2007
    Messages : 17
    Points : 19
    Points
    19
    Par défaut
    Salut,

    Il n'y a pas beaucoup d'informations sur le .NET remoting, à l'exception d'exemple vraiment simple sur Internet.

    La piste que je peux te donner est celle-ci :
    http://www.developer.com/net/csharp/...0918_3088231_1

    Ce lien discute de comment gérer les exceptions via WebService, qui est " l'équivalent WEB " du .NET remoting. Il utilise XML (SOAP) pour communiquer les informations des exceptions.

    Une autre solution : tu utilise une librairie partagée pour le .NET remoting. Tu pourrais y inclure tes exceptions et leur attribuer un numéro. Toutes tes méthodes serveur retourneraient alors un numéro qui correspond à l'exception que tu relance du coté client. Cependant, cette méthode est mauvaise puisque les exceptions existent justement pour eviter le retour d'une valeur d'erreur dans une méthode.

    Bonne chance
    DoOmX

Discussions similaires

  1. Réponses: 4
    Dernier message: 03/01/2007, 14h32
  2. Réponses: 2
    Dernier message: 22/05/2006, 17h36
  3. Réponses: 4
    Dernier message: 18/04/2006, 19h42
  4. comment recuperer la video d'une webcam branchée sur port US
    Par ProgElecT dans le forum VB 6 et antérieur
    Réponses: 6
    Dernier message: 05/02/2005, 23h54

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo