21. september 2005 - 09:23Der er
6 kommentarer og 1 løsning
Forskel på fejlbesked mellem Win XP og 2k3 Server
Hejsa.
Jeg er ved at udvikle en webservice som kalder en anden webservice. Jeg udvikler på en Windows XP professional maskine med .NET 1.1 SP1 - og begge services bliver i forbindelse med produktion driftet på to forskellige Windows 2003 Servere med .NET 1.1 SP1.
Mit problemet er, at hvis "front-end" webservicen smider en exception, så er fejlbeskeden forskellig afhængigt af om den bliver afviklet på XP eller 2k3 Server.
På XP maskinen ser den f.eks. sådan ud:
"Server was unable to process request. --> The underlying connection was closed: The remote name could not be resolved."
, mens den samme fejl fra 2003 Server ser således ud:
"System.Web.Services.Protocols.SoapException: The underlying connection was closed: The remote name could not be resolved. --> System.Net.WebException: The underlying connection was closed: The remote name could not be resolved. at System.Net.HttpWebRequest.CheckFinalStatus() <resten af stack-tract fjernet>".
Som det ses, så er fejlbeskrivelsen fra 2003 Serveren betydeligt mere kryptisk - det er jo brugere der kommer til at se den.
Hvorfor er der denne forskel, og kan man undgå det?
Umiddelbart tror jeg forskellen på de to fejl skyldes at 2003 Serveren fanger en "System.Web.Services.Protocols.SoapException", og at XP blot fanger en generel Exception. Derfor er beskrivelsen mere detaljeret i 2003.
Fejlen opstår, sansyneligvis, fordi klienten ikke har adgang til Serverns certifikat. Har du tilføjet certifikatet til klient maskinen ?
hehe - OK... jeg har ikke udtrykt mig klart nok :)
Der er ikke selve fejlen der skal fokuseres på - den exception der fanges er den samme i begge tilfælde - det der er problemet er at beskrivelsen af fejlen ikke er den samme på de to platforme.
Den exception der fanges i dette tilfælde skyldes at jeg har sat "front-end" webservicen til at pege på en URL der ikke eksisterer :)
Synes godt om
Slettet bruger
22. september 2005 - 07:34#4
Fang den exception selv, så du kan lave din egen fejlbesked.
Og lad generelt være med at smide systemets fejlbeskeder ud til brugerne. De passer bedre i en logfil.
.. problemet er at nogle exception skal vises til brugerene - men hvis man ikke kan være sikker på signaturen af en fejlbesked, så er det svært at filtrere fra :)
Lukker spørgsmålet - har endnu ikke fundet en løsning :(
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.