
Ich habe diesen seltsamen Verbindungsfehler, bei dem meine Java-App auf einigen PCs funktioniert, auf anderen jedoch nicht. Was nicht funktioniert, ist das erfolgreiche Herstellen einer HTTP-Verbindung zu einem bestimmten Server. Java erhält eine TimeoutException.
Das Seltsame ist, dass es auf den Systemen, auf denen es nicht funktioniert, funktioniert, wenn ich die Verbindung in einem lokalen Browser (Firefox und IE) öffne. Ich erhalte nicht nur eine Antwort vom Authentifizierungsproxy, sondern auch mit korrekten Anmeldeinformationen von meinem Server. Es ist HTTP 400 (Ungültige Anforderung), weil der Browser nicht das erwartete JSON sendet.
Das lokale System ist Windows Server 2016. Die Windows-Firewall ist heruntergefahren. Soweit ich weiß, ist die lokale Installation Jahre alt. Hier gibt es kein Konfigurationsmanagement.
Die Java-App läuft als Dienst unter "NT-Authority/SYSTEM". Wenn ich sie als lokaler Benutzer ausführe (wie den Browser), verhält sie sich genauso. Ich konnte keinen Unterschied erkennen.
Wenn ich die TCP-Verbindung in TcpView überprüfe, wird der Status als „HERGESTELLT“ angezeigt. Bedeutet das, dass der Handshake erfolgreich war?
Mir gehen echt die Ideen aus. Für jeden Teil des Gesamtsystems kann ich argumentieren, dass da kein Fehler sein kann, weil es auf den meisten Systemen funktioniert. Bis auf einige.
- An der Java-App kann es nicht liegen, da in fast allen Fällen der gleiche Code funktioniert.
- An der Serverkonfiguration kann es nicht liegen, da wiederum fast keine Clients betroffen sind.
- Es kann nichts mit der Authentifizierung zu tun haben, denn genau dieselben Anmeldeinformationen funktionieren, sobald ich die Java-App mit genau derselben Konfiguration von einem anderen lokalen System im selben lokalen Netzwerk aus ausführe. Die Authentifizierungskonfiguration ist die einzige Konfiguration meiner Java-App.
- Aus demselben Grund kann es auch kein Problem mit der lokalen Netzwerkkonfiguration, etwa einem Proxy oder ähnlichem, sein.
Ich vermutete auch, dass andere Anwendungen oder Viren auf demselben System laufen, aber was könnten sie möglicherweise tun, um dieses Verhalten zu zeigen?
Jede Hilfe wird geschätzt.