Wenn in ApplicationConfig eine BackendUrl eingetragen ist, welche anpingbar aber nicht mit HTTP Requests erreichbar ist (z.B. localhost:8080, aber kein Http Server auf diesem Port), wirft UserWebApiServices.cs eine ungefangene HttpRequest Exception mit SocketException als InnerException
Schritte zum Reproduzieren:
localhost:8080 als BackendBaseUrl in ApplicationConfig.json eintragen, Autorentool starten, LmsLoginDialog öffnen.
Erwartetes Verhalten:
Es wird eine Fehlermeldung angezeigt, welche erklärt, dass das Backend nicht erreicht werden konnte (SocketException Message).
Tatsächliches Verhalten:
Eine ungefangene Exception wird geworfen, das Programm crashed. Man muss zur Behebung manuell die URL aus ApplicationConfig.json löschen
Ansprechpartner:
@andreasweishaupt @niklasstich @philgei
Ursache (erst bei Fix angeben):
Ungefangene SocketException
Lösung (erst bei Fix angeben):
BackendReachable Logik einbauen (@andreasweishaupt) und diese Exception als false Wert interpretieren.
Commit, in dem das Problem gefixed wurde:
e6e93ff
Notes
Problem besteht auch in v1.0, Fix bitte auf den Support Branch backporten.
Beschreibung des Problems:
Wenn in ApplicationConfig eine BackendUrl eingetragen ist, welche anpingbar aber nicht mit HTTP Requests erreichbar ist (z.B. localhost:8080, aber kein Http Server auf diesem Port), wirft UserWebApiServices.cs eine ungefangene HttpRequest Exception mit SocketException als InnerException
Schritte zum Reproduzieren:
localhost:8080 als BackendBaseUrl in ApplicationConfig.json eintragen, Autorentool starten, LmsLoginDialog öffnen.
Erwartetes Verhalten:
Es wird eine Fehlermeldung angezeigt, welche erklärt, dass das Backend nicht erreicht werden konnte (SocketException Message).
Tatsächliches Verhalten:
Eine ungefangene Exception wird geworfen, das Programm crashed. Man muss zur Behebung manuell die URL aus ApplicationConfig.json löschen
Ansprechpartner:
@andreasweishaupt @niklasstich @philgei
Ursache (erst bei Fix angeben):
Ungefangene SocketException
Lösung (erst bei Fix angeben):
BackendReachable Logik einbauen (@andreasweishaupt) und diese Exception als
false
Wert interpretieren.Commit, in dem das Problem gefixed wurde:
e6e93ff
Notes
Problem besteht auch in v1.0, Fix bitte auf den Support Branch backporten.