Socket Webserver mit SSLSocket geht nicht

Swissii

Neues Mitglied
Hallo liebes Forum,

Ich habe folgende Probleme:
Bei mir will der Java Webserver nicht funktionieren dh dieser will nicht den Text laden :(
Fehlermeldung:
(Aus meinem ErrorHandler)
Code:
---------------------------------------------------------- ERROR MESSAGE ----------------------------------------------------------
Datum: 04.06.2017
Zeit: 13:10:26
Meldung:
javax.net.ssl.SSLException: Unrecognized SSL message, plaintext connection?
    at sun.security.ssl.InputRecord.handleUnknownRecord(InputRecord.java:710)
    at sun.security.ssl.InputRecord.read(InputRecord.java:527)
    at sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:973)
    at sun.security.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1375)
    at sun.security.ssl.SSLSocketImpl.writeRecord(SSLSocketImpl.java:747)
    at sun.security.ssl.AppOutputStream.write(AppOutputStream.java:123)
    at sun.nio.cs.StreamEncoder.writeBytes(StreamEncoder.java:221)
    at sun.nio.cs.StreamEncoder.implClose(StreamEncoder.java:316)
    at sun.nio.cs.StreamEncoder.close(StreamEncoder.java:149)
    at java.io.OutputStreamWriter.close(OutputStreamWriter.java:233)
    at java.io.BufferedWriter.close(BufferedWriter.java:266)
    at ch.swissi.terrmania.terraprotect.webserver.AcceptedSocketConnection.run(AcceptedSocketConnection.java:163)
Codezeile:
Java:
            System.setProperty("javax.net.ssl.trustStore", "alias");
            System.setProperty("javax.net.ssl.trustStorePassword", "mypassword");
            java.lang.System.setProperty("sun.security.ssl.allowUnsafeRenegotiation", "true");
            System.setProperty("https.proxyPort", "8080");
            System.getProperties().put("proxySet", true);
            System.setProperty("java.protocol.handler.pkgs","com.sun.net.ssl.internal.www.protocol");
            Security.addProvider(new com.sun.net.ssl.internal.ssl.Provider());
         
         
            KeyStore keystore = KeyStore.getInstance("PKCS12");
            char[] storepass = "mypassword".toCharArray();
            char[] keypass = "mypassword".toCharArray();
            String alias = "alias";
            String file = "plugins/TerraProtect/mc.keystore";
         
            keystore.load(new FileInputStream(file), storepass);
            // display certificate
            java.security.cert.Certificate cert = keystore.getCertificate(alias);

            // setup the key manager factory
            KeyManagerFactory kmf = KeyManagerFactory.getInstance("SunX509");
            kmf.init(keystore, keypass);
            // setup the trust manager factory
            TrustManagerFactory tmf = TrustManagerFactory.getInstance("SunX509");
            tmf.init(keystore);
            SSLContext sc = SSLContext.getInstance("TLS");
            sc.init(kmf.getKeyManagers(), null, null);
            SSLServerSocketFactory ssf = sc.getServerSocketFactory();
            sock.setEnabledProtocols( new String[]{"TLSv1","TLSv1.1","TLSv1.2"} );
            sock.setEnabledCipherSuites(ssf.getSupportedCipherSuites());
            sock.setSSLParameters(sc.getDefaultSSLParameters());
            BufferedReader in = new BufferedReader(new InputStreamReader(sock.getInputStream()));
            BufferedWriter out = new BufferedWriter(new OutputStreamWriter(sock.getOutputStream()));
         
         
            out.write("HTTP/1.0 200 OK\r\n");
            out.write("Server: Apache/0.8.4\r\n");
            out.write("Content-Type: application/json\r\n");
            out.write("\r\n");
            out.write(getPrettyGson());         
            out.close(); <--- Hier kommt der Fehler
         
            sock.close();
Was ist den das Problem? Ich verstehe net wieso der das nicht ausgeben kann....
 

JuKu

Top Contributor
D.h. du willst gerade einen eigenen Webserver schreiben?

Der Fehler tritt normalerweise auf Client Seite auf, wenn der Client mit einem HTTP Webserver verbunden ist, der kein HTTPS kann.
Siehe auch:

Bei dir tritt also ein SSL Fehler auf.
Mir ist allerdings noch rätselhaft, an welcher Stelle du den Server Socket überhaupt öffnest und Verbindungen akzeptierst.
Du solltest dir mal Netty oder vertx.io genauer anschauen, anstatt dich selbst um die Verbindung an sich zu kümmern.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
J Webserver mit Java schreiben? Netzwerkprogrammierung 4
B HTML mit Webserver und Datenbank verbinden Netzwerkprogrammierung 2
Z Debug-Info einer JavaSE Applikation auf Webserver Netzwerkprogrammierung 0
K Webserver mit Ethernet-Device verbinden Netzwerkprogrammierung 0
S Webserver für Jar File Netzwerkprogrammierung 4
F Java App mit Webserver Netzwerkprogrammierung 4
L Webserver pingen Netzwerkprogrammierung 5
Semox HTTP Webserver: Externe Dateien werden nicht verwendet. Netzwerkprogrammierung 10
TiME-SPLiNTER HTTP User Authentication: Java Client -> Webserver Netzwerkprogrammierung 7
Semox Socket Selbstgeschriebenen Webserver im lokalen Netzwerk publizieren? Netzwerkprogrammierung 4
I HTTP Grundlagen um einen Webserver zu erstellen Netzwerkprogrammierung 17
L Javaprogramm auf Webserver Netzwerkprogrammierung 5
M Java-Programm als Webserver erzeugt HTML Netzwerkprogrammierung 8
S Verständnisproblem concurrent - iterativer Webserver Netzwerkprogrammierung 2
D "FileChooser" auf einem Webserver Netzwerkprogrammierung 5
F Empfehlung für embedded Webserver Netzwerkprogrammierung 10
F Webserver Zugriff per Java Netzwerkprogrammierung 3
sparrow Connection Reset bei Webserver, Java WebStart als Client Netzwerkprogrammierung 9
H Webserver mit PHP als Java-Programm, gibt es schon so etwas? Netzwerkprogrammierung 12
C Socketkommunikation mit Webserver Netzwerkprogrammierung 5
J Webserver auf einem Pocket PC Netzwerkprogrammierung 2
M sessionhandling beim webserver Netzwerkprogrammierung 5
B Laden einer *.csv Datei von einem Webserver (http-request) Netzwerkprogrammierung 8
A Webserver - Bild senden Netzwerkprogrammierung 2
faetzminator SSLSocket und keyStore/trustStore Netzwerkprogrammierung 2
N Socket geht auf Windows, aber auf Mac nicht ? Netzwerkprogrammierung 3
J Socket Doppel Login geht nicht Netzwerkprogrammierung 11
KeNnY_tHe_OwNeR Empfangen geht, Senden nicht ?! Netzwerkprogrammierung 18
M lesen vom Client geht nicht Netzwerkprogrammierung 10
G xLightweb-Client + AJAX-Server - geht das? Netzwerkprogrammierung 4
alexpetri simpler Proxy geht nicht Netzwerkprogrammierung 7
A socket.setKeepAlive() geht nicht? Netzwerkprogrammierung 2
Z .ob das wohl geht. Netzwerkprogrammierung 24
D Multicast geht nur auf einem Rechner Netzwerkprogrammierung 9
M RMI lokal über externe IP geht nicht Netzwerkprogrammierung 5
G FAQ Chat geht nicht ? Netzwerkprogrammierung 4
C Einfacher Filedownload mit Sockets geht nicht für pdffiles Netzwerkprogrammierung 16
S Echo geht nicht Netzwerkprogrammierung 3
P URL - 403 ERROR - Google News - PHP geht Netzwerkprogrammierung 5
K RMI - Und es geht einfach nicht Netzwerkprogrammierung 2
S GEHT DAS? - Nur eine Frage! (Printer Port direkt ansteuern?) Netzwerkprogrammierung 4
T RMI, CORBA, COM+, JavaBeans, . ? Womit geht's? Netzwerkprogrammierung 5

Ähnliche Java Themen

Neue Themen


Oben