Strings versenden | Nur 1 Client

Status
Nicht offen für weitere Antworten.

b0unc3

Bekanntes Mitglied
hay leudz,

hab da n kleines Problem.. also ich möchte einen String zum Sevrer senden und der Server soll sie dann auf der Konsole ausgeben.. allerdings gibt der server bei mir immer nur "null" aus, kann mir vielleicht jemand sagen warum?

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

public class Server {
	public static void main(String[] args) throws IOException {
		ServerSocket server = new ServerSocket(3141);
		
		while (true) {
			Socket client = server.accept();
			
			//InpuStream
			InputStream in		= client.getInputStream();
			BufferedReader rdr	= new
			BufferedReader(new InputStreamReader(in));
			
			//OutputStream
			
			String sTest = rdr.readLine();
			System.out.println(sTest);
			
			client.close();
		}
	}
}

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

public class Client {
	public static void main(String[] args) throws IOException {
		Socket server = new Socket("localhost", 3141);
		
		//InputStream
		InputStream in = server.getInputStream();
		BufferedReader rdr = new
		BufferedReader(new InputStreamReader(in));
		
		//OutputStream
		OutputStream out = server.getOutputStream();
		BufferedWriter wrt = new
		BufferedWriter(new OutputStreamWriter(out));
		
		wrt.write("Hallo, ich bin ein String");
		
		server.close();
	}
}
 
S

SlaterB

Gast
ich weiß jetzt nicht ganz genau die Reihenfolge der Handshakes,
nehme aber mal an, dass zwischen 'Bestätigung der Verbindung' und 'Ankunft des Strings vom Client' gut und gerne 300 ms vergehen,

deine Abfrage nach dem String findet aber direkt nach der Verbindung statt,
vielleicht 10 ms nach der Bestätigung,
warte doch mal ein bisschen ;)
 

b0unc3

Bekanntes Mitglied
also wenn ich ihn jetzt so warten lasse:
Code:
import java.io.*;
import java.net.*;

public class Server {
	public static void main(String[] args) throws IOException {
		ServerSocket server = new ServerSocket(3141);
		
		while (true) {
			Socket client = server.accept();
			
			//InpuStream
			InputStream in		= client.getInputStream();
			BufferedReader rdr	= new
			BufferedReader(new InputStreamReader(in));
			
			//OutputStream
			//kommt noch...
			
			try {
				server.wait(400);
			} catch (InterruptedException ex) {
				System.err.println(ex);
			}
			String sTest = rdr.readLine();
			System.out.println(sTest);
			
			client.close();
		}
	}
}

dann bekomme ich nach starten des Clients vom Server folgende Fehlermeldung von Eclipse:

Exception in thread "main" java.lang.IllegalMonitorStateException
at java.lang.Object.wait(Native Method)
at Server.main(Server.java:20)

EDIT:

hab jetzt auch mal versuche int mit Thread.sleep() warten zu lassen, aber selbst bei 20000 ms gibt er mir immernoch nur null aus ... :###
 

Murray

Top Contributor
Du schreibst mit write einen String ohne zusätzlichen Zeilenumbruch, versuchst dann aber mit readln eine Zeile (also bis zum Zeilenumbruch) zu schreiben. Versuch im Client mal
Code:
wrt.write("Hallo, ich bin ein String"); 
wrt.write( "\r\n");
wrt.flush();
 

b0unc3

Bekanntes Mitglied
hey cool so gehts, danke

//EDIT:

also wenn ich jetzt den client wieder schließe, dann stürtzt der Server mit folgender meldung ab:

Exception in thread "main" java.net.SocketException: Connection reset
at java.net.SocketInputStream.read(Unknown Source)
at sun.nio.cs.StreamDecoder.readBytes(Unknown Source)
at sun.nio.cs.StreamDecoder.implRead(Unknown Source)
at sun.nio.cs.StreamDecoder.read(Unknown Source)
at java.io.InputStreamReader.read(Unknown Source)
at java.io.BufferedReader.fill(Unknown Source)
at java.io.BufferedReader.readLine(Unknown Source)
at java.io.BufferedReader.readLine(Unknown Source)
at Server.main(Server.java:21)

kann mir jemand sagen, wass ich da machen kann?

oke habs gelöst habs in einen try-catch block getan

//EDIT:

also hab ein neues Problem, wie kann ich denn jetzt mehrere Clients anmelden? wenn ich nen 2ten starte von nem anderen pc, dann kommen die nachrichten von diesem nicht an :( :###
 
G

Guest

Gast
b0unc3 hat gesagt.:
also hab ein neues Problem, wie kann ich denn jetzt mehrere Clients anmelden? wenn ich nen 2ten starte von nem anderen pc, dann kommen die nachrichten von diesem nicht an :( :###

Kann dir jetzt nicht ganz folgen. Solange der Server läuft kann sich immer eine Client anmelden, seinen String schicken und meldet sich dann wieder ab. Solange das alles hintereinander geschieht funktioniert das bei mir einwandfrei und das entspricht ja eigentlich auch deiner Aufgabenstellung oder?
Titel: Strings versenden | Nur 1 Client

Wenn du willst, dass sich mehrere Clients gleichzeitig anmelden können und auch mehr als nur einen String senden sollen, solltest du vielleicht mit Threads arbeiten. Such mal ein bischen im Netzwerkforum hier, da gibts jede Menge Beispiele dazu.
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
L Strings an Server senden und in MYSQL speichern? Netzwerkprogrammierung 3
D Strings per Schleife zum Client senden Netzwerkprogrammierung 4
B Socket NIO-Server/Client-Abgeschnittene Nachrichten (Strings) Netzwerkprogrammierung 6
Q Problem bei Vergleichen von Strings übertragen über eine Socketverbindung Netzwerkprogrammierung 3
G Verschlüsselte Strings über Netzwerk verschicken Netzwerkprogrammierung 19
H Empfangen von Strings Netzwerkprogrammierung 14
B lange Strings in http-Request? Netzwerkprogrammierung 3
W Socket Client-Server Verbindung. Wie Strings senden? Netzwerkprogrammierung 6
G Strings über Sockets senden Netzwerkprogrammierung 5
M lange Strings senden Netzwerkprogrammierung 16
B Problem mit der Ausgabe eines Strings an SocketOut Netzwerkprogrammierung 4
H Socket Kann ein Socket server 2 dimensionale Arrays empfangen und versenden? Netzwerkprogrammierung 3
T E-Mail versenden. Netzwerkprogrammierung 8
L Versenden von "Bildschirm" Netzwerkprogrammierung 2
E Objekte versenden, Client-Server Netzwerkprogrammierung 25
L Email versenden mit Java funktioniert nicht, Fehlermeldungen: MessagingException & SocketException Netzwerkprogrammierung 10
precoc String Array versenden Netzwerkprogrammierung 7
B Viele verschiedene E-Mails an unterschiedliche Empfänger schnell versenden? Netzwerkprogrammierung 8
S Email via Googlemail versenden Netzwerkprogrammierung 17
M Mail über Exchange versenden Netzwerkprogrammierung 13
P Dateiennamen versenden Netzwerkprogrammierung 4
P Mit Java Javascript-Anfrage versenden Netzwerkprogrammierung 4
T Objekte im NIO unblocking mode versenden Netzwerkprogrammierung 11
N String als byte Array über Socket versenden Netzwerkprogrammierung 8
N Socket File über Socket vom Server an Client versenden Netzwerkprogrammierung 15
M Socket Datei über Socket versenden Netzwerkprogrammierung 5
C An WebDAV einen "MKCOL" Befehl versenden Netzwerkprogrammierung 4
X Versenden von Objekten braucht zu lange Netzwerkprogrammierung 5
N Technologie zum versenden von Objects Netzwerkprogrammierung 5
Kr0e Versenden von Daten übers Netzwerk Netzwerkprogrammierung 30
R Versenden einer MIME-Datei per E-Mail [solved] Netzwerkprogrammierung 5
N E-mail versenden Netzwerkprogrammierung 4
B Wie HTTP GET/POST Anfrage versenden? Netzwerkprogrammierung 7
T SWT Image versenden Netzwerkprogrammierung 2
T Einzelne Bits per Socket versenden Netzwerkprogrammierung 16
F Link erzeugen und versenden Netzwerkprogrammierung 4
O Wert versenden? Netzwerkprogrammierung 12
G Datein versenden funktioniert nicht ! Netzwerkprogrammierung 19
S Objekt Felder versenden Netzwerkprogrammierung 5
A Konflikt: Blocking und Non-Blocking bei Objekte versenden Netzwerkprogrammierung 4
O Über Socket Array versenden Netzwerkprogrammierung 5
G Bytes versenden Netzwerkprogrammierung 9
G Datei über ObjectInputStream versenden Netzwerkprogrammierung 8
P Objekte über DatagramSocket versenden Netzwerkprogrammierung 12
V Kann keine DatagramPackets versenden von einem Jar Archiv Netzwerkprogrammierung 4
J Problem beim versenden von eigenen Objekten über RMI Netzwerkprogrammierung 2
S Dateien versenden Netzwerkprogrammierung 16
C Dateien über Sockets versenden? Netzwerkprogrammierung 10
F IP "versenden" Netzwerkprogrammierung 6
N *.* Dateien versenden im Lan Netzwerkprogrammierung 5
H Versenden von Objekt Netzwerkprogrammierung 2
L JavaMail: Versenden von mails funktioniert nicht Netzwerkprogrammierung 7
P Array per Socketverbindung versenden Netzwerkprogrammierung 2
O Sms versenden Netzwerkprogrammierung 5
T Dateien wia P2P Connection versenden Netzwerkprogrammierung 2
S E-Mails versenden. Netzwerkprogrammierung 10
D Bits über UDP versenden Netzwerkprogrammierung 3
M generelle Frage zum Versenden Netzwerkprogrammierung 4
T Mit JavaMail API Faxe versenden? Netzwerkprogrammierung 5
K Files versenden Netzwerkprogrammierung 5
I Performanteste Kommunikationsmethode zwischen Client u. Server Netzwerkprogrammierung 4
L Socket Automatische Zuweisung von Server und Client Rolle Netzwerkprogrammierung 12
ExceptionOfExpectation Server/Client-Kommunikation Netzwerkprogrammierung 34
M Server-Client-System für Browsergame Netzwerkprogrammierung 5
B Axis2 Webservice mit Client Zertifikat Authentifizierung Netzwerkprogrammierung 3
Yonnig Threads mit Client/Server und GUI (laufend bis button-click) Netzwerkprogrammierung 9
T Jetty mit Client-Zertifikat nur bei spezifischer URL Netzwerkprogrammierung 1
J Einlesen von Servernachrichten von TCP-Client Netzwerkprogrammierung 17
J Client-Server und SOAP Netzwerkprogrammierung 23
L30nS RMI Aufruf einer Client-Methode von einem RMI-Server Netzwerkprogrammierung 3
T String von Client zu Server kommt nicht an Netzwerkprogrammierung 92
D WebSocket Server mit HTML Client und Java Server Netzwerkprogrammierung 5
D Server - Client Informationsaustausch, Möglichkeiten Netzwerkprogrammierung 3
H Socket Chat entwickeln mit Java Server Client Netzwerkprogrammierung 4
X Kann ich einen Client/Server verbindung hinkriegen die mir alle paar Sekunden die aktuellen Daten per Realtime zuschickt ? Netzwerkprogrammierung 9
T Client zu Client Kommunikation Netzwerkprogrammierung 2
D Slf4j - Logging - Client-Server Architektur Netzwerkprogrammierung 3
J client server mit nur einem PC Netzwerkprogrammierung 33
M Socket Nachricht von TCP-Client an Server schicken Netzwerkprogrammierung 12
M Socket Verbindung Matlab(Server) Java(Client) Netzwerkprogrammierung 1
R Socket FATAL EXCEPTION MAIN bei Socket based client/server app Netzwerkprogrammierung 2
G Server-Client IO Problem Netzwerkprogrammierung 6
ruutaiokwu ständig "sender address rejected: improper use of smtp" bei smtp-client Netzwerkprogrammierung 4
J HTTP [Java 9] Neuer HTTP Client - Tutorial Netzwerkprogrammierung 3
A Chatserver/-client - Code stoppt bei readUTF() Netzwerkprogrammierung 7
I Socket Das erste Server-Client Programm Netzwerkprogrammierung 16
L Zugriffprobleme Client - Webservice AspenTechnology Netzwerkprogrammierung 0
A Client Client Übertragung Netzwerkprogrammierung 12
M Socket Server antwortet dem Client nicht Netzwerkprogrammierung 6
K Socket Netty Client wirft Fehler! Netzwerkprogrammierung 3
I Client/Server Kommunikation bei einem Spiel Netzwerkprogrammierung 4
C Mini Client-Server-Anwendung funktioniert nicht Netzwerkprogrammierung 8
U Client Soap Verbindung wieder schließen Netzwerkprogrammierung 0
U Socket Client mit hash authentifizieren Netzwerkprogrammierung 3
F HTTP HTTP Rest Client mit TLS1.2 und selbst signiertem Zertifikat Netzwerkprogrammierung 2
P Server als Client nutzen Netzwerkprogrammierung 8
D Socket Run Args Client/Server Socket Netzwerkprogrammierung 1
Cromewell Socket Multithreaded Server und Client Netzwerkprogrammierung 1
Y Client/Server/DB communication Netzwerkprogrammierung 3
JavaWolf165 Socket mit .writeUtf etwas vom Client zum Server schicken Netzwerkprogrammierung 13

Ähnliche Java Themen

Neue Themen


Oben