Probleme mit kleinem Messenger-Programm

Status
Nicht offen für weitere Antworten.
A

Aley

Gast
Hallo, ich habe ein paar kleine Probleme mit einem kleinen Messenger den ich versuchen zu schreiben. Hab noch nicht so viel Ahnung von dser Java-Programmierung und wollte bloß versuchen mal ein kleines Prog zu schreiben ^^
Also, Mein Programm basiert auf einem Server-Teil und einem Client-Teil, hab auch ein paar sachen hier aus dem Forum benutzt, hier erstmal der Quellcode

server.java

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


public class server {

	/**
	 * @param args
	 * @throws IOException 
	 */
	public static void main(String[] args) throws IOException {

		// Server starten
		ServerSocket server = new ServerSocket(1234);
		
		// warten auf eine neue Verbindung
		Socket s = server.accept();
		
		// neue Verbindung ist da, wir lesen einfach aus,
		// was sie uns so schickt und schicken dann alles in grossbuchstaben wieder zurück
		BufferedReader in = new BufferedReader(new InputStreamReader(s.getInputStream()));
		String text = in.readLine();
		System.out.println("Text vom Client: "+text);
		BufferedWriter out = new BufferedWriter(new OutputStreamWriter(s.getOutputStream()));
		
		//EINE Texteingabe zurückschicken
		System.out.println("Nachricht an den Client: ");
		String temp = functions.getline();
		out.write(temp);
		out.newLine();
		out.flush();
		// aufräumen
		out.close();
		in.close();
		server.close();  

	}

}

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


public class client {

	/**
	 * @param args
	 * @throws IOException 
	 * @throws UnknownHostException 
	 */
	public static void main(String[] args) throws UnknownHostException, IOException {

		// socket auf localhost port 1234 konstruieren
		Socket s = new Socket("192.168.15.37",1234);
		// etwas über den socket versenden
		BufferedWriter out = new BufferedWriter(new OutputStreamWriter(s.getOutputStream()));
		System.out.println("Nachricht an den Server: ");
		String temp = functions.getline();
		out.write(temp);
		// zeilenumbruch senden
		out.newLine();
		out.flush();


		// BufferedReader konstruieren
		BufferedReader in = new BufferedReader(new InputStreamReader(s.getInputStream()));
		// eine zeile lesen
		String text = in.readLine();
		// und ausgeben
		System.out.print("Text vom Server: ");
		System.out.println(text);

		// am ende schliessen wir alle offenen Reader und Writer, der Socket wird dabei automatisch geschlossen
		out.close();
		in.close();

	}

}

functions.java
Code:
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.InetAddress;


public class functions {
	

/******Funktion um EINE Texteingabe von der Tastatur einzulesen**************************/
	static String getline() throws IOException{		
		
		BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
		String line;
			line = in.readLine();	
		in.close();						
		return line;
	}
/****************************************************************************************/
	
}

Also meine Probleme:
1. Ich kann vom Client nur EINE nachricht senden und vom Server nur EINMAL antworten, wie kann ich es realisieren das ich mehrere Nachrichten schicken kann?
2. Wie kann ich es realisieren das ich in dem Programm im Client die IP des Servers eingeben kann, zur Zeit ändere ich die IP immer nur im quellcode, aber irgendwann soll ja auch jemand das prog benutzen der nicht programmieren kann.

Für alle Anregungen, Lösungen oder Internetseiten woch ich das anchlesen kann wär ich sehr dankbar, also vielen dank schon im voraus für eure hilfe.

lg alex
 
S

SlaterB

Gast
> wie kann ich es realisieren das ich mehrere Nachrichten schicken kann?

höre auf, die Sockets sofort zu closen und rufe mehrmals
out.write(temp);
out.newLine();
out.flush();
auf??
jedesmal wird eine Zeile geschrieben, wenn du das mehrmals machen möchtest, dann tue/ programmiere es doch einfach,
Quelltext kann man ja mit einem Editor editieren ;)

auch den Reader auf System.in solltest du evtl. nicht gleich schließen, sonst kannst du nix mehr von der Konsole einlesen

--------
> Wie kann ich es realisieren das ich in dem Programm im Client die IP des Servers eingeben kann

na du liest doch jetzt schon etwas von der Konsole ein, da kann also auch jemand die IP eintippen?
oder du verwendest eine graphische Oberfläche,

oder du übergibst einen Parameter beim Programmstart:
java Client 10.23.18.233
 
A

Aley

Gast
Wegen der IP, ich hatte schon versucht die per System.in einzulesen, aber da hat das prog jedesmal ein haufen excepitons geworfen, ka warum. ich hab sie immer in der for 192.168.15.37 eingegeben, solange ich die ip direkt in den quellcode geschrieben haben hat das auch funktioniert, aber wenn ich sie eingelesen hab (über tastatur) ging nichts mehr :-(
 
S

SlaterB

Gast
> ka warum.

ich weiß es auch nicht hellseherisch,
bin mir aber sicher, dass es dafür gute Gründe gibt,

ich kann dich also nur ermutigen, dass ganze nochmal zu versuchen,
evtl. Fehler hier genau zu dokumentieren + Quellcode + Eingabe usw.

besser naürlich aus einem Lehrbuch selber lernen und verstehen ;)
aber es geht auf jeden Fall, vertraue der Macht ;)
 
A

Aley

Gast
xD ... naja, ich werd ma mein glück versuchen, ich dank dir auf jeden fall für deine schnelle antwort :) und zur not frag ich nächste woche nochma meinen dozenten, da krieg ich bestimmt noch plustpunkt für die freiwillige arbeit die ich mir mach ;-)
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
A Probleme mit kleinem Netzwerk Programm Netzwerkprogrammierung 30
S Probleme bei Java-Installation auf Server (Linux/Shell/Terminal) Netzwerkprogrammierung 6
platofan23 Probleme mit Socket bei Android Studio? Netzwerkprogrammierung 22
J Probleme mit Multicast über IPv6, DatagramChannel Netzwerkprogrammierung 1
Niggo_ Probleme mit Java Mail Netzwerkprogrammierung 14
F Probleme mit Connection Reset bei Telnet Verbindung Netzwerkprogrammierung 1
K Probleme bei HTML-Mail-Abruf mit IMAP bei 1und1 Netzwerkprogrammierung 2
L Socket SSLServer Probleme Netzwerkprogrammierung 0
H Probleme mit UDP Netzwerkprogrammierung 0
F Server/Client Probleme Netzwerkprogrammierung 3
R Probleme mit JMS Netzwerkprogrammierung 1
A Probleme beim Klassen-Import von sun.misc. ... Netzwerkprogrammierung 19
M RMI RMI Probleme zwischen Client und Server Netzwerkprogrammierung 5
B Probleme beim ersten Netzwerkprogramm Netzwerkprogrammierung 3
M Probleme mit FTP Netzwerkprogrammierung 19
windl URLConnection unter 1.7 macht Probleme Netzwerkprogrammierung 14
Z Socket Probleme beim Senden und Empfangen Netzwerkprogrammierung 5
Z Probleme beim Senden von Nachrichten an den Server Netzwerkprogrammierung 9
Maxim6394 Probleme bei Messenger Netzwerkprogrammierung 16
I Socket UDP Hole Punching bereitet Probleme Netzwerkprogrammierung 14
C Socket Probleme beim Lesen und Schreiben aus/in einen Socket Netzwerkprogrammierung 2
S HTTP Probleme mit POST-Befehl Netzwerkprogrammierung 2
R FTPS - Probleme mit FTPSClient Netzwerkprogrammierung 2
S Probleme mit XMLEncoder/XMLDecoder Netzwerkprogrammierung 2
D Server - Client Probleme Netzwerkprogrammierung 9
Weiti HTTP Zertifikat-Probleme - InstallCert.java Netzwerkprogrammierung 2
M Socket Probleme mit einfacher Socketverbindung Netzwerkprogrammierung 3
H Probleme mit GUI (RMI) Netzwerkprogrammierung 6
T RMI Probleme mit RMI-Server Netzwerkprogrammierung 4
J Probleme bei RSA mit byte[] bei Versand über RMI Netzwerkprogrammierung 2
T FTP Probleme mit Passiv und Binary Mode Netzwerkprogrammierung 3
J Probleme mit Threads (Client terminiert) Netzwerkprogrammierung 4
S Socket SocketServer und Client machen Probleme Netzwerkprogrammierung 6
B Server / Client Anwendung, Client GUI Probleme Netzwerkprogrammierung 11
F RMI probleme Netzwerkprogrammierung 3
D Probleme bei mehreren Clients uns Senden von Messages Netzwerkprogrammierung 16
E jPcap Probleme Netzwerkprogrammierung 3
B HTTP Probleme mit HttpClient? Netzwerkprogrammierung 2
T Probleme mit Jpcap Netzwerkprogrammierung 18
P Probleme mit OutputStream Netzwerkprogrammierung 7
P Probleme beim weiter senden von Datein Netzwerkprogrammierung 10
B Probleme mit FTP verbindung Netzwerkprogrammierung 22
L Probleme bei Chatserver Netzwerkprogrammierung 6
S Probleme beim senden von Daten per POST Methode an PHP Scrip Netzwerkprogrammierung 5
G Probleme mit SecruityManager + RMI Netzwerkprogrammierung 10
derMartin Probleme mit NNTP Client Netzwerkprogrammierung 2
A Probleme mit Citrix Netzwerkprogrammierung 17
K RXTXcomm : Install - Probleme Netzwerkprogrammierung 7
R Probleme mit UDP Netzwerkprogrammierung 4
P Probleme bei Chat programm Netzwerkprogrammierung 2
I Probleme mit 'JSSE Samples' von Sun Netzwerkprogrammierung 5
T RMI - Probleme beim Starten des Clients Netzwerkprogrammierung 4
E InetAddress Klasse-Probleme Netzwerkprogrammierung 4
M dateien übertragen, probleme mit versch. Strömen? Netzwerkprogrammierung 4
R Rechte Probleme bei Applets Netzwerkprogrammierung 16
D EA-Exception Network Adapter macht probleme Netzwerkprogrammierung 2
G Probleme mit Firewall beim empfangen von dateien über socket Netzwerkprogrammierung 6
P Probleme mit Input- / Output-Streams Netzwerkprogrammierung 2
V probleme mit dem chat programm Netzwerkprogrammierung 4
F WLAN Probleme (CLIENT-SERVER) Netzwerkprogrammierung 4
J Probleme mit ObjectOutputStream! Netzwerkprogrammierung 15
S Probleme beim Beschränken der Geschwindigkeit Netzwerkprogrammierung 6
M Probleme beim Abfangen von Streams Netzwerkprogrammierung 5
G Fragen/Probleme mit JavaMail Netzwerkprogrammierung 2
N Java-Chat (lauffähig) macht Probleme auf der Konsole Netzwerkprogrammierung 6
P Probleme mit einem Array aus Sockets Netzwerkprogrammierung 2
C Probleme bei Dateiupload mit socket Netzwerkprogrammierung 4
T FTP Chatprogramm probleme Netzwerkprogrammierung 2
C RMI Probleme mit iptables Netzwerkprogrammierung 2
D socket exception + timing probleme Netzwerkprogrammierung 2
G Probleme bei Proxy-Server! Netzwerkprogrammierung 5
S Probleme mit HttpURLConnection Netzwerkprogrammierung 10
D Habe 2 Probleme: Input eingabe und Multi Socket Server Netzwerkprogrammierung 2
M Messenger - String oder Objekte Netzwerkprogrammierung 4
A Thread gibt Nachrichten mehrmals aus (Messenger in Java) Netzwerkprogrammierung 3

Ähnliche Java Themen

Neue Themen


Oben