Chat Programm - was ist los?

  • Themenstarter Gast melde mich später an
  • Beginndatum
Status
Nicht offen für weitere Antworten.
G

Gast melde mich später an

Gast
Hallo!

Ich habe ein Chat-proggi geschrieben, welches ich nach einem tutorial gemacht habe! Doch leider will das nicht so ganz!

Hier mal der Code:

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

public class Chatman extends Applet implements Runnable
{
	public static final int PORT = 8765;
	Socket socket;
	DataInputStream in;
	PrintStream out;
	TextField inputfield;
	TextArea outputarea;
	Thread thread;

	public void init()
	{
		inputfield = new TextField();
		outputarea = new TextArea();
		outputarea.setFont( new Font("Dialog", Font.PLAIN, 12));
		outputarea.setEditable(false);

		this.setLayout(new BorderLayout());
		this.add("South", inputfield);
		this.add("Center", outputarea);

		this.setBackground(Color.lightGray);
		this.setForeground(Color.black);
		inputfield.setBackground(Color.white);
		outputarea.setBackground(Color.white);
	}

	public void start()
	{
		try
		{
			socket = new Socket(this.getCodeBase().getHost(), PORT);
			in = new DataInputStream(socket.getInputStream());
			out = new PrintStream(socket.getOutputStream());
		} catch (IOException e)
		{
			this.showStatus(e.toString());
			say("Verbindung zum Server fehlgeschlagen!");
			//System.exit(0);
		}

		say("Verbindung zum Server aufgenommen...");

		if (thread == null)
		{
			thread = new Thread(this);
			thread.setPriority(Thread.MIN_PRIORITY);
			thread.start();
		}
	}


	public void stop()
	{
		try
		{
			socket.close();
		} catch (IOException e)
		{
			this.showStatus(e.toString());
		}

		if ((thread !=null) && thread.isAlive())
		{
			thread.stop();
			thread = null;
		}
	}


	public void run()
	{
		String line;

		try
		{
			while(true)
			{
				line = in.readLine();
				if(line!=null)
				{
					outputarea.appendText(line+'\n' );	
				}
				
			}
		} 
		catch (IOException e) 
		{ 
		  say("Verbindung zum Server abgebrochen"); 
		}
	}


	public boolean action(Event e, Object what)
	{
		if (e.target==inputfield)
		{
			String inp=(String)e.arg;

			out.println(inp);
			inputfield.setText("");
			return true;
		}

		return false;
	}


	public void say(String msg)
	{
		outputarea.appendText("*** "+msg+" ***\n");
	}
}

DER SERVER

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

public class chatmanserver implements Runnable
{
	public static final int PORT = 8765;
	protected ServerSocket listen;
	protected Vector connections;
	Thread connect;

	public chatmanserver()
	{
		try
		{
			listen = new ServerSocket(PORT);
		} catch (IOException e)
		{
			System.err.println("Fehler beim Erzeugen der Sockets:"+e);
			System.exit(1);
		}

		connections = new Vector();

		connect = new Thread(this);
		connect.start();
	}

	public void run()
	{
		try
		{
			while(true)
			{
				Socket client=listen.accept();

				chatmanconnection c = new chatmanconnection(this, client);
				connections.addElement(c);
			}
		} catch (IOException e)
		{
			System.err.println("Fehler beim Warten auf Verbindungen:"+e);
			System.exit(1);
		}
	}

	public static void main(String[] args)
	{
		new chatmanserver();
	}

	public void broadcast(String msg)
	{
		int i;
		chatmanconnection you;

		for (i=0; i<connections.size(); i++)
		{
			you = (chatmanconnection) connections.elementAt(i);
			you.out.println(msg);
		}
	}
}

DER CLIENT

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

class chatmanconnection extends Thread
{
	protected Socket client;
	protected DataInputStream in;
	protected PrintStream out;
	protected chatmanserver server;

	public chatmanconnection(chatmanserver server, Socket client)
	{
		this.server=server;
		this.client=client;

		try
		{
			in = new DataInputStream(client.getInputStream());
			out = new PrintStream(client.getOutputStream());
		} catch (IOException e)
		{
			try { client.close(); } catch (IOException e2) {} ;
			System.err.println("Fehler beim Erzeugen der Streams: " + e);
			return;
		}

		this.start();
	}


	public void run()
	{
		String line;

		try
		{
			while(true)
			{
				line=in.readLine();
				if(line!=null)
					server.broadcast(line);
			}
		} catch (IOException e)
		{
			System.out.println("Fehler:" + e);
		}
	}
}


THX im Vorraus!
 

Heiland

Bekanntes Mitglied
Also wenn ichs kompiliere,

dann kann ich zwar nen text reinschreiben und verbinden tut er auch zum server aber beim enter drücken passiert nichts!
 

foobar

Top Contributor
Lass dir doch mal ein paar Meldungen per System.out.prinln ausgeben, damit du siehst an welcher Stelle er hängen bleibt.
 

Heiland

Bekanntes Mitglied
Bei der Chatman Klasse in Zeile 84 schon beim Start: NullPointerException!

Das heisst doch das ein Zeiger ins Nichts zeigt oder? Aber was sagt mir das! Was muss ich ändern?
 
K

Kollos Gast

Gast
Habe den Chat so wie du ihn gepostest hast mal getestet. Der funktioniert wunderbar.

Habe keine Probleme beim Test gehabt.
 
P

Poldy

Gast
Hallo,

hab mich an dem gleichen Tutorial versucht, bekomme den Chat lokal auf meinem Rechner zum laufen, aber auf dem Server funktioniert es nicht.

Wie muss ich vorgehen? Könnte es am Server liegen und eventuellen Sicherheitseinstellungen? Gibt es kostenfreie Serveralternativen?

Habe alle Dateien in einem Verzeichnis abgelegt, genauso wie auf meinem Rechner. Starte chatserver.class (in dem bsp. wäre es chatmanserver.class) direkt auf dem Server und dann die HTML-Datei in der das Chatapplet eingebettet ist. Nach einigen Sekunden "applet loaded" erscheint "applet chrashed".
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
J Framework/ Muster für Chat-ähnliches Programm gesucht Netzwerkprogrammierung 2
F Chat Programm. Verständnisfrage while-Schleife Netzwerkprogrammierung 7
P Probleme bei Chat programm Netzwerkprogrammierung 2
V probleme mit dem chat programm Netzwerkprogrammierung 4
H Socket Chat entwickeln mit Java Server Client Netzwerkprogrammierung 4
L Chat Fenster Netzwerkprogrammierung 1
J Socket Ein Chat Server Tutorial Netzwerkprogrammierung 8
S Java Chat Server Netzwerkprogrammierung 8
J Chat Server starten über GUI problem Netzwerkprogrammierung 4
P Chat in Java Netzwerkprogrammierung 3
C Java Chat Admin Kenzeichnung Netzwerkprogrammierung 14
D Chat Server/mehre Client Netzwerkprogrammierung 9
Androbin Socket Fehlerhafter Applet-Chat Netzwerkprogrammierung 12
C Microsoft Comic Chat Netzwerkprogrammierung 0
G Socket Socket verbindung für Chat System Netzwerkprogrammierung 3
O Chat (Server) sendet an verschieden Benutzer. Netzwerkprogrammierung 10
J Chat programmieren Netzwerkprogrammierung 12
L Chat Server programmieren Netzwerkprogrammierung 10
TheJavaKid Webcam-Chat im Applet (ChatRoulette Klon) Netzwerkprogrammierung 10
H Socket Java Chat - Verbindung zum Server fehlgeschlagen. Netzwerkprogrammierung 5
K Socket Chat-GUI eigenes Event nach Empfangen Netzwerkprogrammierung 2
K chat Netzwerkprogrammierung 13
F RMI einfacher Chat - Callbacks(?) funktionieren nicht Netzwerkprogrammierung 7
L Socket Chat funktioniert nicht Netzwerkprogrammierung 2
T Socket Java Chat Netzwerkprogrammierung 2
xDarkSunx Chat JFrame Netzwerkprogrammierung 3
xDarkSunx Hilfe Chat Login Netzwerkprogrammierung 7
E JAVA Chat Netzwerkprogrammierung 19
C Java Chat funktioniert nicht richtig Netzwerkprogrammierung 6
I Chat-Client empfängt nichts vom Server Netzwerkprogrammierung 3
A Socket UDP Chat Verbindungsproblem im WWW (Server sendet ins leere) Netzwerkprogrammierung 11
A Multi-User-Chat Netzwerkprogrammierung 2
M Socket Chat-Client-Problem Netzwerkprogrammierung 8
E Userliste für Chat Applet Netzwerkprogrammierung 4
L Socket Chat Server für mehrere Clients Netzwerkprogrammierung 7
AMStyles Client Server basierter Chat Netzwerkprogrammierung 7
M chat als applet umgeschrieben - unbekannter fehler :( Netzwerkprogrammierung 2
P Socket Chat selbst bauen + Multiusereditor Netzwerkprogrammierung 13
T Java Chat über UDP Netzwerkprogrammierung 7
Developer_X Habe fragen zur Chat Programmierung Netzwerkprogrammierung 4
P Java Multiuser Chat hohe Systemauslastung Netzwerkprogrammierung 24
D Hilfe ich komme bei meinem UDP chat Server nicht mehr weiter Netzwerkprogrammierung 9
B Die alte Leier: "Chat" Netzwerkprogrammierung 3
M chat funktioniert nicht (Connection refused: connect) Netzwerkprogrammierung 3
R Java-Chat-Applet funktioniert nur in Eclipse Netzwerkprogrammierung 3
S Client-Server Chat Problem nur im lokalen Netztwerk Netzwerkprogrammierung 23
DamienX Chat Socketserver/Client. wo ist das Problem? Netzwerkprogrammierung 2
J Client-Client-Chat ohne Serverbeteiligung Netzwerkprogrammierung 2
A Wichtig für einen Chat? Netzwerkprogrammierung 4
S Java Applet Chat Grundsatzfrage Netzwerkprogrammierung 6
R Java Chat über Inet connecten Netzwerkprogrammierung 3
C Voice Chat Netzwerkprogrammierung 3
G FAQ Chat geht nicht ? Netzwerkprogrammierung 4
T Schriftfarbe im Chat ändern Netzwerkprogrammierung 2
G ActionEvent klappt beim Chat nicht Netzwerkprogrammierung 5
J Kleines Problem mit Chat Server Netzwerkprogrammierung 2
T Chat-Client Netzwerkprogrammierung 12
G Chat zwischen applets: möglich? Netzwerkprogrammierung 2
T Chat mit mehreren Clients Netzwerkprogrammierung 3
C Chat , Streamproblem, PumpingException, Danke Netzwerkprogrammierung 2
S RMI Chat Problem, Client bekannt machen Netzwerkprogrammierung 2
K Lokaler Chat Netzwerkprogrammierung 5
S Chat aufs Internet ausweiten Netzwerkprogrammierung 5
J Router behindert Chat Netzwerkprogrammierung 9
S Knuddels Chat System: Bot / Nachrichten verschicken? Netzwerkprogrammierung 6
G Chat - was brauch ich Netzwerkprogrammierung 2
André B. Brauche Hilfe bei Chat Netzwerkprogrammierung 6
K Problem mit "Chat" Netzwerkprogrammierung 2
N Java-Chat (lauffähig) macht Probleme auf der Konsole Netzwerkprogrammierung 6
Paule Acces denied bei Chat Netzwerkprogrammierung 6
B Multi-chat Problem Netzwerkprogrammierung 3
N Java Chat-Problem Netzwerkprogrammierung 4
G Java Chat mit HTML Cleint Netzwerkprogrammierung 3
A server mit 2 Ports : Mit und ohne SSL Chat system Netzwerkprogrammierung 10
Z chat: wann http und wann sockets verwenden? Netzwerkprogrammierung 11
M Socket Verbindungen für einen Chat Netzwerkprogrammierung 10
R Mini-Chat löst BindException aus Netzwerkprogrammierung 7
F Multiclient Chat Netzwerkprogrammierung 12
K Chat: Nur 1 Verbindung zum Server möglich :( Netzwerkprogrammierung 6
K Chat: Verbindung kommt nicht zu stande Netzwerkprogrammierung 6
S JAV07P SGD client/server chat Netzwerkprogrammierung 4
C IRC CHAT auslesen -> Sockets/input und output Streams Netzwerkprogrammierung 9
S Einfacher Multiuser chat in java Netzwerkprogrammierung 18
M Erstelltes Programm über Internet Browser ausführen Netzwerkprogrammierung 26
I Socket Das erste Server-Client Programm Netzwerkprogrammierung 16
Aruetiise Socket Java Programm auf Server Netzwerkprogrammierung 3
G Programm unter anderer IP ausführen Netzwerkprogrammierung 6
T Socket Java Programm hängt sich auf bei dem versuch von einem Socket scanner Daten zu erhalten. Netzwerkprogrammierung 1
P RMI Client Server Programm über Internet Netzwerkprogrammierung 2
A Classpath Tomcat, Start von Programm aus Tomcat Container Netzwerkprogrammierung 1
M Java-Programm aus dem Web laden Netzwerkprogrammierung 3
E Eingabe (auf Internetseite) durch ein Programm machen lassen Netzwerkprogrammierung 19
T UDP Pakete empfangen ohne Programm zu blockieren Netzwerkprogrammierung 3
S HTTP Servlet als Instanzen im Programm starten Netzwerkprogrammierung 3
M Paktete abfangen und zu eigenem Programm umleiten - wie? Netzwerkprogrammierung 5
C Programm per Hompage ansprechen Netzwerkprogrammierung 4
T Download Programm - Download endet vorzeitig (bricht ab) Netzwerkprogrammierung 11
K Programm als Webservice laufen lassen Netzwerkprogrammierung 5
G ObjectInputStream hängt ganzes Programm auf... Netzwerkprogrammierung 7
C Vom Server Programm auf Client starten Netzwerkprogrammierung 2

Ähnliche Java Themen

Neue Themen


Oben