Generation de page d'erreur cote client

Messages postés
65
Date d'inscription
mercredi 26 mai 2004
Statut
Membre
Dernière intervention
25 mars 2010
-
Messages postés
65
Date d'inscription
mercredi 26 mai 2004
Statut
Membre
Dernière intervention
25 mars 2010
-
Bonjour,

Je voulais savoir si il etait possible de pouvoir generer, lors d'une erreur cote webservice, une page cote client lui indicant la cause du probleme et arretant du coup le processus en cours ....

Je sais pas si c'est tres clair

Merci :-)

9 réponses

Messages postés
6814
Date d'inscription
dimanche 15 décembre 2002
Statut
Membre
Dernière intervention
13 octobre 2010
29
Bonsoir,


non tu n'est pas clair du tout ! comment est appellé ton webservice ?





<hr />

Cyril - MVS - MCP
Messages postés
65
Date d'inscription
mercredi 26 mai 2004
Statut
Membre
Dernière intervention
25 mars 2010
1
C'est à dire "comment est appelé mon WebService" ?
J'ai une solution sous Visual Studio composée de 3 projets: 1 WebSite, 1
WebService, 1 dll.


Le WebSite communique avec mon WebService qui fais lui même appel a la dll pour
les connections à une base de données. Donc mon problème actuellement est que,
j'arrive cote WebSite a loader une page d'erreur personnalisé lors d'un problème
quelconque. Mais je voudrais que lors d'une erreur coté WebService ou coté dll
une erreur puisse s'afficher sur le sur une page comme le fais mon WebSite. Ex:
J'ai une erreur lors de ma connexion à ma base de donnée, pour l'instant il me génère
cote WebService un fichier de log situant ou est l'erreur. Ce qui serait
vraiment bien c'est qu'il me load aussi une page disant à l'utilisateur qui a
voulu ce connecter pourquoi ca ne marche pas ... ca peux paraitre super simple
à faire mais j'avoue que je ne sais pas du out comment faire ...




J'espère avoir était plus clair.
Messages postés
6814
Date d'inscription
dimanche 15 décembre 2002
Statut
Membre
Dernière intervention
13 octobre 2010
29
Bonjour,


Tu peux lancer une exception il me semble, et faire un try catch coté website pour afficher l'erreur ...





<hr />
Cyril - MVS - MCP
Messages postés
65
Date d'inscription
mercredi 26 mai 2004
Statut
Membre
Dernière intervention
25 mars 2010
1
cad ? je lance une exception cote WebServiceet apres ? je peux lui dire d'afficher une page cote WebSite ?
Messages postés
6814
Date d'inscription
dimanche 15 décembre 2002
Statut
Membre
Dernière intervention
13 octobre 2010
29
En faisant un try catch lors de ton appell de la webmethod coté client et la tu affiche une page spécial. Si les exceptions ne sont pas supportés par le webservice tu fais une valeur de retour spécial (genre null) et la tu affiches la page que tu veux en faisant un simple if ...

<hr />Cyril - MVS - MCP
Messages postés
65
Date d'inscription
mercredi 26 mai 2004
Statut
Membre
Dernière intervention
25 mars 2010
1
pourrais tu m'indiquer la methode a suivre apres l'appel au catch pour dire qu webservice d'afficher une page d'erreur au website
Messages postés
6814
Date d'inscription
dimanche 15 décembre 2002
Statut
Membre
Dernière intervention
13 octobre 2010
29
Cherche un minimum ! je vais pas tout te faire :s


 


try
{
 /// appel au WebService
}
Catch
{
    LabelError.Text = "Une erreur s'est produite";
   // ou Response.Redirect("'page d'erreur.aspx");
}

ou

String s = MonWebService.MaMethod();

if (s == String.Empty)
{
    LabelError.Text = "Une erreur s'est produite";
   // ou Response.Redirect("'page d'erreur.aspx");
}

Je vois pas ou est la difficulté la dedans :-/





<hr />
Cyril - MVS - MCP
Messages postés
65
Date d'inscription
mercredi 26 mai 2004
Statut
Membre
Dernière intervention
25 mars 2010
1
ok merci je ne savais pas qu'on pouvais appeler une page du webservice
Messages postés
65
Date d'inscription
mercredi 26 mai 2004
Statut
Membre
Dernière intervention
25 mars 2010
1
nan ca ne marche pas, je pense que tu ne comprend pas ce que je veux faire. Si j'ai une erreur dans mon webservice je voudrais qu'il l'affiche dans la page aspx qui ce situe cote website... je ne peux pas mettre "Response.Redirect" dans une fichier cs cote webservice.