Socket Programmierung Java

Status
Nicht offen für weitere Antworten.

coka4mee

Mitglied
Hallo =)

Ich habe ein Problem. Habe ein Beispiel aus einem Buch in Eclipse rein kopiert um mir ein paar Tipps zu holen. Beim Debuggen bleibt das Programm an der Stelle mySocket = serverSocket.accept() stehen und läuft zwar weiter, aber ich kann keinen weiteren Schritt debuggen. Es wird auch keine Exception geworfen =( Ich öffne das Socket ja auf localhost...geht die Socket Verbindung dann trotzdem über meinen Router wieder in den Rechner zurück? Kann es sein dass die Firewall im Router irgendetwas blockt??? Weil die PC Firewall hab ich aus....! Hier nochmal der ganze Code:

Code:
import java.net.* ;
import java.io.* ;

public class ClientCon {
  public static void main (String[] args) {
    String hostname = "127.0.0.1";
    Socket socket=null;
    BufferedReader in;
    String s;

    try {
      socket = new Socket (hostname, 4711);
      in = new BufferedReader 
        (new InputStreamReader 
          (socket.getInputStream() ) );
      while ( (s = in.readLine()) != null) {
        System.out.println (s);
      }
      in.close();
    } catch (Exception e) {
        System.out.println ("ClientCon " + e);
    }
    try { socket.close(); } catch (Exception ex) {}
  }
}

package server;

import java.io.DataInputStream;
import java.io.IOException;
import java.io.PrintStream;
import java.net.*;

public class Server {

	public ServerSocket ConSocket;
	public Socket	ClientSocket = null;
	DataInputStream input;
	PrintStream output;
	
	public int initServer(){
		try{
			ConSocket = new ServerSocket(9000);
			ClientSocket = new Socket("localhost", 9000);
		}
		catch (IOException e){
			System.out.println(e);
			return 1;
		}
		return 0;
	}
	
	public int runServer(){
		try{
			ClientSocket = ConSocket.accept();
		}
		catch (IOException e){
			System.out.println(e);
			return 1;
		}
		return 0;
		}
	
	public int openInputStream(){
		try{
			input = new DataInputStream(ClientSocket.getInputStream());
		}
		catch(IOException e){
			System.out.println(e);
			return 1;
		}
		return 0;
	}
	
	public int openOutputStream(){
		try{
			output = new PrintStream(ClientSocket.getOutputStream());
		}
		catch(IOException e){
			System.out.println(e);
			return 1;
			
		}
		return 0;
	}
	
	public int tearDown(){
		try{
			output.close();
			input.close();
			ClientSocket.close();
			ConSocket.close();
		}
		catch(IOException e){
			System.out.println(e);
			return 1;
		}
		return 0;
	}
	
	public void writeToClient(){
		char[] s = new char[10];
		s = "Hallo Pizza".toCharArray();
		output.print(s);
	}
	
	
}

import java.net.* ;

public class ServerMain {
  public static void main (String[] args) {

    ServerSocket server = null;
    Socket s = null;
    ServerCon doIt;
    Thread t;

    System.out.println("ServerMain - to be ended with Ctrl-C !");
    try {
      server = new ServerSocket (4711);
      while(true) {
        s = server.accept(); ///////////////////////////////////////////////HIER BRICHT DER DEBUGGER AB////////////
        doIt = new ServerCon (s);
        t = new Thread (doIt);
        t.start();
        
      }
    } catch (Exception e) {
        System.out.println("ServerMain " +e);
    }
    try { server.close(); } catch (Exception ex) {}
  }
}

Für Tipps wäre ich dankbar =)

Liebe Grüße Coka
 

mlux

Mitglied
Ich verstehe zwar dein Problem nicht ganz, jedoch könnte es damit zusammenhängen, dass die accept()-Methode die weitere Ausführung deines Programms immer blockiert. Erst wenn eine Verbindung zu dem erstellten Socket hergestellt wird, läuft das Programm weiter.

siehe auch http://java.sun.com/j2se/1.4.2/docs/api/java/net/ServerSocket.html#accept()

Listens for a connection to be made to this socket and accepts it. The method blocks until a connection is made.
 

JPKI

Top Contributor
Schau dir mal die Methode ServerSocket#setSoTimeout(int) an, da kannst du einstellen, nach welcher Zeit das Warten auf eine einkommende Verbindung eingestellt werden soll.
 

J.C.

Mitglied
Ja, das stimmt. Die Methode accept ist eine Blockierende Methode, genau so wie read und write, d.h. Der Programmfluss stoppt und wartet ewig bis sich jemand verbindet.
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
N Socket-Programmierung Java Basics - Anfänger-Themen 4
K Frage zu SdtOut streams bzw. Socket Programmierung Java Basics - Anfänger-Themen 3
izoards Socket Kommunikation Java Basics - Anfänger-Themen 16
Nina Pohl Ein Vorgang bezog sich auf ein Objekt, das kein Socket ist Java Basics - Anfänger-Themen 6
G Socket Verbindung aufbauen Java Basics - Anfänger-Themen 11
S Bilder über Socket Senden Java Basics - Anfänger-Themen 1
S Asynchrone Socket-Abfragen Java Basics - Anfänger-Themen 5
Meeresgott OOP Socket Verbindung richtig Kapseln Java Basics - Anfänger-Themen 0
O Socket by reference übergeben Java Basics - Anfänger-Themen 0
J Socket schließen - Ist eine SocketException unumgänglich? Java Basics - Anfänger-Themen 4
D Socket ---> Server Socket worauf muss ich achten? Java Basics - Anfänger-Themen 2
M wait/notify bei Socket Java Basics - Anfänger-Themen 4
B Input/Output Socket I/O - outputStream.write(-1) Java Basics - Anfänger-Themen 2
B Socket OutputStream Java Basics - Anfänger-Themen 17
B Socket Kommunikation in beide Richtungen Java Basics - Anfänger-Themen 12
B Socket, args Java Basics - Anfänger-Themen 22
L Socket in JTextArea Java Basics - Anfänger-Themen 9
T Input/Output Zwei InputStreams von einem Socket Java Basics - Anfänger-Themen 2
B Socket Problem Java Basics - Anfänger-Themen 3
T socket.close aber verbindung besteht noch Java Basics - Anfänger-Themen 4
F Buffered Image über Socket versenden Java Basics - Anfänger-Themen 6
E Socket InputStream "terminiert" nicht Java Basics - Anfänger-Themen 4
B Threads Interrupt während Socket.read()? Java Basics - Anfänger-Themen 3
M Versand von Nachrichten via Socket (Delay) Java Basics - Anfänger-Themen 21
F socket-problem Java Basics - Anfänger-Themen 6
E Input/Output Socket bekommt keine Verbindung bei funktionierendem Fremdziel Java Basics - Anfänger-Themen 2
E Socket (Client) dauerhaft aktiv? Java Basics - Anfänger-Themen 9
D Java - Socket - Datenübertragung Java Basics - Anfänger-Themen 18
E Input/Output einfachen Socket für XML-Anfragen bauen Java Basics - Anfänger-Themen 13
R Cannot find a free socket for the debugger Java Basics - Anfänger-Themen 6
F Socket Kommunikation Java Basics - Anfänger-Themen 4
M "Connection reset" gbxRemote Socket Java Basics - Anfänger-Themen 9
N Files mit Byte an Socket versenden Java Basics - Anfänger-Themen 2
L FTP per Socket Java Basics - Anfänger-Themen 2
M Audio Stream läuft auf :connection abort: socket write error Java Basics - Anfänger-Themen 2
J Socket - BufferedReader lese Problem Java Basics - Anfänger-Themen 2
M Socket Server Java Basics - Anfänger-Themen 9
N Socket Problem? Java Basics - Anfänger-Themen 9
G Socket erstellen dauert sehr lange. Java Basics - Anfänger-Themen 4
H Java Socket Java Basics - Anfänger-Themen 14
A XML Daten über Socket Java Basics - Anfänger-Themen 3
I Allgemeine fragen zu Socket server Java Basics - Anfänger-Themen 6
F Socket Instanz auf Klasse welche von Socket erbt zuweisen Java Basics - Anfänger-Themen 3
ven000m Wieso antwortet mein Server nicht mehr (Socket Anwendung) Java Basics - Anfänger-Themen 2
J Daten von einem (char*)Socket einlesen. Java Basics - Anfänger-Themen 3
S Java Socket Java Basics - Anfänger-Themen 3
M HTTP-Anfragen und Socket Java Basics - Anfänger-Themen 2
A von Socket-Stream lesen Java Basics - Anfänger-Themen 4
M Ändern einer Socket-Eigenscheft aus einem modalen Dialog? Java Basics - Anfänger-Themen 6
M Java Programmierung Aufgabe Anfänger Java Basics - Anfänger-Themen 1
F Automat-Programmierung Java Basics - Anfänger-Themen 30
N Lambdas, Methodenref, fkt Programmierung ? Java Basics - Anfänger-Themen 10
districon Dynamisch Programmierung/Backtracking/Memoization Java Basics - Anfänger-Themen 3
S Buchstaben Programmierung Bedeutung Java Basics - Anfänger-Themen 4
S Hilfe bei Programmierung einer Hotelabrechnung Java Basics - Anfänger-Themen 5
enjoykimii Strukturierte Programmierung Hilfe Java Basics - Anfänger-Themen 29
A Frage zur programmierung Java Basics - Anfänger-Themen 12
Nerdinfekt Programmieranfänger, Schwierigkeiten mit der Programmierung Java Basics - Anfänger-Themen 6
U Compiler-Fehler Programmierung einer Drehkugel Java Basics - Anfänger-Themen 8
L Programmierung mit Hash Java Basics - Anfänger-Themen 3
C Wie habt Ihr angefangen mit der Java Programmierung, ohne Programmiervorkenntnisse Java Basics - Anfänger-Themen 8
J Problem bei der Programmierung eines Tannenbaums Java Basics - Anfänger-Themen 9
S GUI-Programmierung Sudoku-Rätsel lösen Java Basics - Anfänger-Themen 1
B Fibonacci Zahlen dynamische Programmierung Java Basics - Anfänger-Themen 7
S Programmierung simulieren - aber wie?! Java Basics - Anfänger-Themen 3
H Java Programmierung Java Basics - Anfänger-Themen 3
W Problem bei Programmierung von Monte-Carlo-Integration Java Basics - Anfänger-Themen 12
D Guten Tag mache gerade eine Umschulung zum FiSi war leider jetzt 2 Wochen Krank und wir hatten Prozendurale Programmierung. Java Basics - Anfänger-Themen 3
P Rechnen mit Brüchen - objektorientierte Programmierung Java Basics - Anfänger-Themen 18
D Objektorientierte Programmierung Java Basics - Anfänger-Themen 13
F Attribute bei Objektorientierter Programmierung Java Basics - Anfänger-Themen 11
F Ich brauche Hilfe bei Objektorientierter Programmierung... Java Basics - Anfänger-Themen 19
F Problem beim entfernen von mehreren Listenelementen auf einmal (Programmierung des Spiels Arschloch) Java Basics - Anfänger-Themen 1
Q Objektorientierte Programmierung Java Basics - Anfänger-Themen 17
J Texte für Java Programmierung besser verstehen? Java Basics - Anfänger-Themen 2
C GUI Programmierung unter Windows mit Java womit? Java Basics - Anfänger-Themen 11
D Collections Aufgaben Java-Programmierung Überforderung Java Basics - Anfänger-Themen 36
A GUI Programmierung mit Textfield Java Basics - Anfänger-Themen 3
J Programmierung Quiz Spiel Java Basics - Anfänger-Themen 3
J Programmierung Quiz Spiel Java Basics - Anfänger-Themen 2
U Brauche Hilfe bei Programmierung einer Produktdatenbank App Java Basics - Anfänger-Themen 4
L Dynamische Programmierung Java Basics - Anfänger-Themen 0
J Verschieden Fragen über Java Programmierung Java Basics - Anfänger-Themen 3
A Methoden Habe ein Problem bei folgender Programmierung Java Basics - Anfänger-Themen 15
slejden Erste Schritte Frage zur OOP (objektorientierten Programmierung Java Basics - Anfänger-Themen 4
V Threads Nebenläufige Programmierung Java Basics - Anfänger-Themen 6
V Nebenläufige Programmierung Java Basics - Anfänger-Themen 5
Henri Paare Frage über Java Programmierung Java Basics - Anfänger-Themen 10
S Programmierung eines Geldwechselautomaten! Java Basics - Anfänger-Themen 2
R Einige Neulingsfragen (Wrapper, GUI-Programmierung) Java Basics - Anfänger-Themen 4
D JavaBeans und die visuelle Programmierung Java Basics - Anfänger-Themen 2
M Dringend Experten für Scala-Play basierte Programmierung!!!! Java Basics - Anfänger-Themen 0
Z Programmierung eines Stacks Java Basics - Anfänger-Themen 19
A Programmierung herangehensweise Java Basics - Anfänger-Themen 9
T Objektorientierte Programmierung - Kein Plan wieso das nicht funktioniert! Java Basics - Anfänger-Themen 6
G 3D-Spiele-Programmierung Java Basics - Anfänger-Themen 3
I Programmierung-Hausaufgabe: Hilfe benötigt Java Basics - Anfänger-Themen 8
R Kann jemand diese Java Programmierung machen? Versteh ich leider nicht Java Basics - Anfänger-Themen 17
T Nachhilfe JAVA Programmierung Java Basics - Anfänger-Themen 1
R Schaffe es nicht Random-Programmierung zu vollenden. Wo liegt der Fehler in diesem Code? Java Basics - Anfänger-Themen 13

Ähnliche Java Themen

Neue Themen


Oben