Client aktualisieren

Loud Silence

Bekanntes Mitglied
Ich habe es nun endlich, dank der kräftigen Unterstützung aus diesem Forum, geschafft das Programm soweit zu entwickeln:

Server

Java:
import java.net.*;
import java.awt.Button;
import java.awt.Dimension;
import java.awt.FlowLayout;
import java.awt.Frame;
import java.awt.TextField;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.*;

public class KleinerServer{
	
	ServerSocket server = new ServerSocket( 1234);
	static Button b1;
	static String str;
	static PrintWriter p;
KleinerServer() throws IOException {
	 while(true) {
	        Socket client = server.accept();
	        BufferedReader br = new BufferedReader(new InputStreamReader (client.getInputStream()));
	        p = new PrintWriter(client.getOutputStream());
	        //schreiben
	       p.println(str);
	        //lesen
	        String x = br.readLine();
	       System.out.print(x);
	        p.flush();
	        
	      br.close();
	      p.close();
	    }	
}
public static void main (String [] args) 
{
	Frame f = new Frame();
	f.setLayout( new FlowLayout() );
	b1 = new Button("GetText");
	final TextField tf = new TextField();
	tf.setPreferredSize(new Dimension(80, 30));
	f.add(b1);
	f.add(tf);
	ActionListener al = new ActionListener() {
      public void actionPerformed( ActionEvent ae ) {
       str = tf.getText();
       
      }
    };
	
    b1.addActionListener( al );
	
f.pack();
f.setVisible(true);

try {
		@SuppressWarnings("unused")
		KleinerServer server = new KleinerServer();
	} catch (IOException e) {
		System.out.print(e);
	}
}
}



Client

Java:
import java.net.*;
import java.io.*;
public class Client {

	
	Client() throws IOException {
		Socket server = new Socket ("localhost", 1234);
		 BufferedReader br = new BufferedReader(new InputStreamReader (server.getInputStream()));
	        PrintWriter p = new PrintWriter(server.getOutputStream());
		p.println("HI");
		p.flush();
		String x = br.readLine();
		System.out.print(x);
		server.close();
		br.close();
		p.close();
	}

		public static void main(String[] args) {
			try{
				Client client = new Client();
			}catch (IOException e) {
				System.out.print(e);
				
	}
	

	}

}

Ich hoffe das ist so weit verständlich.
Der Client hat die Funktionen des Servers der Einfachheit halber noch nicht.
Jetzt wäre meine Frage:

Wenn ich zuerst den Server dann den Client starte, printet das System null aus.
Das ist ja auch verständlich da noch nichts im Textfield steht.
Wenn ich aber dann etwas reinschreibe und dann nochmals den Button anklicke.
Kommt der geschriebene Text nicht mehr auf der anderen Seite an.
Wie kann ich das ändern?
 
Zuletzt bearbeitet:

Michael...

Top Contributor
Naja, das was Du jetzt hast ist zum einen ein "Wegwerf" Client. Er sendet etwas und wartet auf Antwort. Danach ist er sofort tot.
Zum anderen kann der Server auch nicht viel mehr als einem sich verbindenden Client eine Nachricht senden und dessen Antwort einzulesen. Danach kapp auch der Server die Verbindung zum Client.

Für eine echte Kommunikation fehlt da noch einiges. Schon mal mit Threads gearbeitet?
Hier in den FAQ oder Tutorials gibt es - glaube ich - ein Beispiel für eine einfache Client Server Kommunikation.
 

Loud Silence

Bekanntes Mitglied
Ok hab mich mal in ein paar Beispiele eingelesen.
Die sind wirklich deutlich anders.
sagen wir mal so gäbs bei mir noch was zu retten?
Oder lieber gleich n neues Projekt beginnen?

Bzw: Könnte man das ganze nicht über einen Timer realisieren der regelmäßig die Methode br.readLine() ausführt?

Wäre das möglich?
 
Zuletzt bearbeitet:

Michael...

Top Contributor
Ok hab mich mal in ein paar Beispiele eingelesen.
Die sind wirklich deutlich anders.
sagen wir mal so gäbs bei mir noch was zu retten?
Oder lieber gleich n neues Projekt beginnen?
Du hast ja erst ein paar Zeilen Code, die kannst Du sicher weiterhin nutzen und verbauen.
Bzw: Könnte man das ganze nicht über einen Timer realisieren der regelmäßig die Methode br.readLine() ausführt?

Wäre das möglich?
Ein Timer nützt Dir da nichts. Einmal readLine() aufgerufen und schon blockiert der aktuelle Thread solange, bis es eine Zeile zum Einlesen gibt.

Bei der Kommunikation ist es wichtig, dass das Lesen und Schreiben in zwei separaten Threads läut. Der nächste Schritt wäre also sich mit Threads auseinander zu setzen.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
K Warum wird mir auf der Konsole des Servers nicht "xxxx" angezeigt (Server/Client) Java Basics - Anfänger-Themen 4
K Verständnis Problem bei Server/Client Java Basics - Anfänger-Themen 2
K Warum wird mir "Empfangen vom Client:" nicht sofort ausgegeben(Server/Client) Java Basics - Anfänger-Themen 3
K Verständnisproblem bei Server/Client Java Basics - Anfänger-Themen 3
A Server - Client Nachrichtenaustausch über Eventbus Java Basics - Anfänger-Themen 12
berserkerdq2 Sende eine Nachricht an den Client und leere den Ausgabestorm, was ist damit genau gemeint? Java Basics - Anfänger-Themen 3
S Java Client-je nach Heap Size Größe startet Applikation oder nicht Java Basics - Anfänger-Themen 4
D Verbesserungsvorschläge zur Struktur einer Client Server Desktop Chat App Java Basics - Anfänger-Themen 24
D Unerwartetes Verhalten bei Client Server Chat App Java Basics - Anfänger-Themen 12
D Welche GUI Library für eine Client Server Chat App Java Basics - Anfänger-Themen 14
K Verständnisfrage Server/Client BufferedReader, PrintWriter Java Basics - Anfänger-Themen 2
A Client-Server Kommunikation Java Basics - Anfänger-Themen 3
I Client ObjectInputStream error... Java Basics - Anfänger-Themen 5
W Client verbindet sich nicht Java Basics - Anfänger-Themen 14
B Email Client in der eigenen Software einbauen Java Basics - Anfänger-Themen 3
S Server - für jeden Client ein Serverthread Java Basics - Anfänger-Themen 2
E SocketServer/Client stürzt ab. Address already in use. Java Basics - Anfänger-Themen 2
I Wann ist Client plattformunabhängig? Java Basics - Anfänger-Themen 22
E MCLauncher eigener Client workt nicht? Java Basics - Anfänger-Themen 4
L Erste Schritte Erste Versuche mit Server und Client Java Basics - Anfänger-Themen 7
elischa Client-Server IO und Stream Steuerung ? Java Basics - Anfänger-Themen 2
I Print Client -> Server -> Client? Java Basics - Anfänger-Themen 1
I Unique client information in WebApp Java Basics - Anfänger-Themen 3
I lokales Programm mit Client/Server Programm kommunizieren Java Basics - Anfänger-Themen 3
J TCP MultiThreaded Server und Client - irgendwo ist der Fehler, aber ich find ihn nicht Java Basics - Anfänger-Themen 3
Joew0815 Error org.apache.xmlrpc.client.XmlRpcClientConfigImpl.setUserAgent Java Basics - Anfänger-Themen 2
N Was bedeutet "Implementierung vor dem Client verbergen" bei Design Patterns? Java Basics - Anfänger-Themen 2
K Java Client > Python Server Java Basics - Anfänger-Themen 0
O Verriegeln, aber wo? Finde den Client der zu schließem ist. Java Basics - Anfänger-Themen 0
S Java - Client/Server mit Stomp kurze Frage Java Basics - Anfänger-Themen 0
T Buffererwriter keine Exception obwohl Client weg Java Basics - Anfänger-Themen 2
E Client Server Java Basics - Anfänger-Themen 12
H Einfache Client/Server-Kommunikation Java Basics - Anfänger-Themen 16
O Server Client Problem Java Basics - Anfänger-Themen 2
N Client soll mehrere Antworten von Servern gleichzeitig empfangen Java Basics - Anfänger-Themen 8
H Java Server/Client, HTML Seite anzeigen Java Basics - Anfänger-Themen 2
L Server pingt Client und fordert Info Java Basics - Anfänger-Themen 2
T Client-Fenster bei Aufruf unvollständig Java Basics - Anfänger-Themen 12
E Senden von Objects an Client. Variablenwerte kommen nicht an Java Basics - Anfänger-Themen 5
R Server/Client für Spiel Java Basics - Anfänger-Themen 2
E Client hilfe!!! Java Basics - Anfänger-Themen 7
B RMI - Fehlermeldung auf dem Client Java Basics - Anfänger-Themen 6
X Applet - Client/Server Java Basics - Anfänger-Themen 2
E Client ergibt NULL? Java Basics - Anfänger-Themen 24
E Socket (Client) dauerhaft aktiv? Java Basics - Anfänger-Themen 9
E HTTP Client - Login durchführen? Java Basics - Anfänger-Themen 4
L Ip-Adresse für Client Java Basics - Anfänger-Themen 14
L Bild versenden über Client/Server Java Basics - Anfänger-Themen 10
L Wegwerf Client Java Basics - Anfänger-Themen 26
S Klassen Server und Client Java Basics - Anfänger-Themen 3
M Client - DB-Server Struktur Java Basics - Anfänger-Themen 7
U Probleme mit Server-Client implementierung Java Basics - Anfänger-Themen 5
G Server-Client Kommunikation Java Basics - Anfänger-Themen 3
J DNS-Client Java Basics - Anfänger-Themen 2
J Simpler DNS Client Java Basics - Anfänger-Themen 20
Z Tomcat Server Kommunikation zu Client Applet Java Basics - Anfänger-Themen 5
B Server-Client mit Thread ausstatten Java Basics - Anfänger-Themen 3
D Client-Server Problem Java Basics - Anfänger-Themen 2
J Netzwerkrprogammierung Client - Server Java Basics - Anfänger-Themen 3
J Netzwerkprogrammierung Client/Server Java Basics - Anfänger-Themen 16
G ArrayListe vom Server nach Client schicken Java Basics - Anfänger-Themen 17
M Flexiblen Client programmieren Java Basics - Anfänger-Themen 2
G JMS -> Wie Anmeldung vom Client an Server? Java Basics - Anfänger-Themen 4
S Webservice: Dateien downloaden vom Webserver auf den Client Java Basics - Anfänger-Themen 7
G Ausg. in JSP erzeugen die als Antwort an Client gesch. wird Java Basics - Anfänger-Themen 2
I Server / Client Programm wie einen String übergeben? Java Basics - Anfänger-Themen 6
K Client-Liste im Chat Java Basics - Anfänger-Themen 2
B Client - Server Verbindung über sockets mysql DB ansprechen? Java Basics - Anfänger-Themen 6
G Java Server Client Programmierung Java Basics - Anfänger-Themen 3
B Bild/Datei von einem Server an einen Client senden Java Basics - Anfänger-Themen 6
A Problem mit Ausgabe einer Liste über einen Client Java Basics - Anfänger-Themen 5
rambozola zugriff auf client bei j2ee anwendung Java Basics - Anfänger-Themen 10
G Mail Client öffnen Java Basics - Anfänger-Themen 9
D Server/Client Java Basics - Anfänger-Themen 8
T Datei über UDP verschicken . Speicherprobleme am Client Java Basics - Anfänger-Themen 4
H Server Client, es kommt nichts an. Java Basics - Anfänger-Themen 5
R client-applikation? Java Basics - Anfänger-Themen 5
G [Hilfe] Fileupload: Client-Server Java Basics - Anfänger-Themen 9
S Server/Client Verbindung Java Basics - Anfänger-Themen 2
G Dateidownload Client-Server (jsp) Java Basics - Anfänger-Themen 4
G Zugriff vom 'Server auf Client' Java Basics - Anfänger-Themen 4
S smtp-Client programmieren Java Basics - Anfänger-Themen 9
S Client-Server Java Basics - Anfänger-Themen 18
X client soll bat auf server ansprechen Java Basics - Anfänger-Themen 7
C client/server programm fehler ! Java Basics - Anfänger-Themen 20
F Wie kommen die Applets zum Client? Java Basics - Anfänger-Themen 7
C string über server/client verbindung senden ? Java Basics - Anfänger-Themen 4
T Client-Authentifizierung Java Basics - Anfänger-Themen 6
K [servcer/Client] Suche Server /Client Tutorial. Java Basics - Anfänger-Themen 2
G http client Java Basics - Anfänger-Themen 4
J Progressbar aktualisieren Java Basics - Anfänger-Themen 17
C Timer aktualisieren Java Basics - Anfänger-Themen 5
TimoN11 Array mit unterschiedlichen längen aktualisieren, dann als Methodenwert einsetzen Java Basics - Anfänger-Themen 1
J Java FX - Label aktualisieren Java Basics - Anfänger-Themen 1
J Aktuelle Zeit in einer JavaFX Anwendung aktualisieren lassen Java Basics - Anfänger-Themen 4
M Probleme beim aktualisieren eines JPanels Java Basics - Anfänger-Themen 7
A Input/Output System.out Ausgabe aktualisieren, ohne Konsole vollzuspamen Java Basics - Anfänger-Themen 2
P WindowBuilder aktualisieren Java Basics - Anfänger-Themen 0
L Threads Laufbild Erzeugen Problem mit Aktualisieren des JPanels Java Basics - Anfänger-Themen 2
F Problem bei ImageIcon aktualisieren Java Basics - Anfänger-Themen 5

Ähnliche Java Themen

Neue Themen


Oben