Socket Kann kein ServerSocket erstellen

4596

Mitglied
Ich wollte gerade ein Programm schreiben, dass über einen Server fungiert, kann aber diesen Server nicht erstellen.
Java:
import java.net.*;
public class Server {
private ServerSocket server=new ServerSocket(459);//459 ist die Portnummer
......
}

Beim Aufruf des Konstruktors wird die folgende Exception geworfen:
java.net.PlainSocketImpl:java.net.BindException
Ihre Nachricht lautet "-2".

Leider kann ich damit nix anfangen und google zusammen mit anderen Suchmaschinen hat mir nix gebracht,
und auch eine Suche in diesem Forum brachte mir nichts. Aber eins weiß ich definitiv, nämlich, dass es nicht am Port liegt, da die gleiche Exception auch bei allen anderen erdenklichen Ports auftrat.

Kann mir irgendwer helfen?

Liegt es möglicherweise an meinem Computer?
 

KingOfExceptions

Bekanntes Mitglied
du kannst wenn du willst das folgende programm mal ausführen ... vllt klappt das ja...

server:
Java:
import java.io.*;
import java.net.*;
import java.util.ArrayList;
import java.util.Iterator;


public class SehrEinfacherChatServer 
{
	ArrayList clientAusgabeStröme;
	
	public class ClientHandler implements Runnable
	{
		BufferedReader reader;
		Socket sock;
		
		public ClientHandler(Socket clientSocket)
		{
			try
			{
				sock=clientSocket;
				InputStreamReader isReader=new InputStreamReader(sock.getInputStream());
				reader=new BufferedReader(isReader);
			}
			catch(IOException ex){}
		}
		
		public void run()
		{
			String nachricht;
			try
			{
				while((nachricht=reader.readLine()) != null)
				{
					System.out.println("gelesen: "+nachricht);
					esAllenWeitersagen(nachricht);
				}
			}
			catch(IOException ex){}
		}
		
	}
	
		public static void main (String[] args)
		{
			new SehrEinfacherChatServer().los();
		}
		
		
		public void los()
		{
			clientAusgabeStröme=new ArrayList();
			
			try
			{
				ServerSocket serverSock=new ServerSocket(5005);
				
				while(true)
				{
					Socket clientSocket=serverSock.accept();
					PrintWriter writer=new PrintWriter(clientSocket.getOutputStream());
					clientAusgabeStröme.add(writer);
					Thread t=new Thread(new ClientHandler(clientSocket));
					t.start();
					System.out.println("habe eine Verbindung");
				}
			}
			catch(Exception ex){}
		}
		
		public void esAllenWeitersagen(String nachricht)
		{
			Iterator it=clientAusgabeStröme.iterator();
			while(it.hasNext())
			{
				try
				{
					PrintWriter writer=(PrintWriter) it.next();
					writer.println(nachricht);
					writer.flush();
				}
				catch(Exception ex){}
			}
		}
}

client:

Java:
import javax.swing.*;
import java.awt.event.*;
import java.awt.*;
import java.io.*;
import java.net.*;


public class EinfacherChatClient
{
	JTextArea eingehend;
	JTextField ausgehend;
	BufferedReader reader;
	PrintWriter writer;
	Socket sock;
	
	public static void main(String[]args)
	{
		EinfacherChatClient client=new EinfacherChatClient();
		client.los();
	}
	
	public void los()
	{
		JFrame frame=new JFrame("Einfacher Chat");
		JPanel hauptPanel=new JPanel();
		eingehend=new JTextArea(15,20);
		eingehend.setLineWrap(true);
		eingehend.setWrapStyleWord(true);
		eingehend.setEditable(false);
		JScrollPane fScroller=new JScrollPane(eingehend);
		fScroller.setVerticalScrollBarPolicy(ScrollPaneConstants.VERTICAL_SCROLLBAR_ALWAYS);
		fScroller.setHorizontalScrollBarPolicy(ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER);
		ausgehend=new JTextField(20);
		JButton sendenButton=new JButton("Senden");
		sendenButton.addActionListener(new SendenButtonListener());
		hauptPanel.add(fScroller);
		hauptPanel.add(ausgehend);
		hauptPanel.add(sendenButton);
		netzwerkEinrichten();
		
		Thread readerThread=new Thread(new EingehendReader());
		readerThread.start();
		
		frame.getContentPane().add(BorderLayout.CENTER, hauptPanel);
		frame.setSize(400,500);
		frame.setVisible(true);
	}
	
	private void netzwerkEinrichten()
	{
		try
		{
			sock=new Socket("localhost",5005);
			InputStreamReader streamReader=new InputStreamReader(sock.getInputStream());
			reader=new BufferedReader(streamReader);
			writer=new PrintWriter(sock.getOutputStream());
			JOptionPane.showMessageDialog(null, "Verbindung hergestellt");
		}
		catch(IOException ex)
		{
			JOptionPane.showMessageDialog(null, "Verbindung konnte nicht hergestellt werden");
		}
	}
	
	public class SendenButtonListener implements ActionListener
	{
		public void actionPerformed(ActionEvent evt)
		{
			try
			{
				writer.println(ausgehend.getText());
				writer.flush();
			}
			catch(Exception ex)
			{
				JOptionPane.showMessageDialog(null, "Mitteilung konnte nicht gesendet werden");
			}
			
			ausgehend.setText("");
			ausgehend.requestFocus();
		}
	}
	
	public class EingehendReader implements Runnable
	{
		public void run()
		{
			String nachricht;
			try
			{
				while((nachricht=reader.readLine())!=null)
				{
					System.out.println("gelesen: "+nachricht);
					eingehend.append(nachricht+"\n");
				}
			}
			catch(IOException ex)
			{}
		}
	}
}
 

4596

Mitglied
Danke für den Code, obwohl ich nur den Server gebraucht hätte.
Ich muss zugeben, es lag am Port(hab nur die mit 3 Stellen getestet ;(
Das Thema wär erledigt.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
M Socket kein Input Netzwerkprogrammierung 8
P Warum kann ich kein Socket aufbauen? Netzwerkprogrammierung 12
R RMI Kein "rmiC.exe" vorhanden, lediglich "rmiD.exe" Netzwerkprogrammierung 5
S Dateitransfer - kein end of stream Netzwerkprogrammierung 5
V Socket kein "aktives warten" Netzwerkprogrammierung 10
T XML-RPC kein Zugriff auf Server Interface Netzwerkprogrammierung 3
S FTP ich find kein anfang - generelle sachen Netzwerkprogrammierung 2
E Custom E Mail Adresse mithilfe Serversocket oder ähnliches Netzwerkprogrammierung 21
Tobero Java serversocket nicht nur zuganglich für localhost Netzwerkprogrammierung 6
D ServerSocket - Socket Verbindungsart Netzwerkprogrammierung 3
J 1 Socket - 2 Serversocket Netzwerkprogrammierung 4
J Client - Serversocket Netzwerkprogrammierung 1
Seikuassi Socket ServerSocket mehrmals erzeugen Netzwerkprogrammierung 1
cezary Socket ServerSocket starten über GUIIm unterstehenden Code versuche Netzwerkprogrammierung 6
J ServerSocket sauber beenden Netzwerkprogrammierung 3
H ServerSocket.accept() unterbrechen Netzwerkprogrammierung 3
TheJavaKid ServerSocket beendet mit PuTTy Netzwerkprogrammierung 9
T ServerSocket.accept Rückgabetyp casten Netzwerkprogrammierung 3
P Socket Daten senden mit ServerSocket? Netzwerkprogrammierung 2
D Socket ServerSocket Push Netzwerkprogrammierung 5
G ServerSocket.accept() überschreibt IP-Adresse Netzwerkprogrammierung 4
C serversocket.accept() klappt nicht Netzwerkprogrammierung 10
Tobse HTTP ServerSocket HTTP Netzwerkprogrammierung 4
X FAQ Frage - Netzwerkgrundlagen - ServerSocket und Socket Netzwerkprogrammierung 4
M Wahrnehmen, dass ServerSocket geschlossen wurde Netzwerkprogrammierung 14
T ServerSocket bleibt beim lesen von Input hängen Netzwerkprogrammierung 2
M ServerSocket.accept() abbrechen Netzwerkprogrammierung 8
Schandro Herausfinden ob hinter einem Port bereits ein ServerSocket steckt Netzwerkprogrammierung 2
2 Class mit ServerSocket erbt von Thread? Netzwerkprogrammierung 3
T Java Socket und ServerSocket über Internet-IP? Netzwerkprogrammierung 9
dayaftereh serverSocket.accept(); Wecken Netzwerkprogrammierung 2
G Frage zu Serversocket-Beispiel aus der FAQ Netzwerkprogrammierung 17
D Komisches Fenster bei Serversocket Netzwerkprogrammierung 2
M Kommunikation zwischen ServerSocket und Socket Netzwerkprogrammierung 2
F ServerSocket im internet zugänglich machen Netzwerkprogrammierung 15
H ServerSocket -> Zugriff nur von localhost Netzwerkprogrammierung 6
P Serversocket schmeißt immmer EOFEXCEPTION Netzwerkprogrammierung 2
A serversocket soll anfrage vom handy entgegennehmen Netzwerkprogrammierung 4
P Problem mit Socket und ServerSocket Netzwerkprogrammierung 2
S ServerSocket merkt nicht, wenn keiner mehr da ist Netzwerkprogrammierung 8
J ServerSocket vs. DatagramSocket Netzwerkprogrammierung 2
A ServerSocket prinzipielle Frage Netzwerkprogrammierung 5
D Problem ServerSocket global Netzwerkprogrammierung 3
J ServerSocket schließen / öffnen im Programmverlauf Netzwerkprogrammierung 4
G einfache Frage zu ServerSocket ... Netzwerkprogrammierung 5
x46 Java SSLContext erstellen mit SSL-Zertifikat Netzwerkprogrammierung 1
J Firebase Functions Notifications erstellen Netzwerkprogrammierung 1
B JKS erstellen bitte um hilfe Netzwerkprogrammierung 1
C Servlet erstellen klappt nicht Netzwerkprogrammierung 3
R Bonusprogramm erstellen Netzwerkprogrammierung 1
N Lan-Verbindung erstellen Netzwerkprogrammierung 2
T HTTP Einen HTTP Server erstellen Netzwerkprogrammierung 20
L Erstellen eines Online Multiplayer Apps Netzwerkprogrammierung 10
I HTTP Grundlagen um einen Webserver zu erstellen Netzwerkprogrammierung 17
M eclipse helios neuen tomcat server erstellen Netzwerkprogrammierung 8
H RMI Stubs and Skeletons lassen sich nicht erstellen Netzwerkprogrammierung 4
S netzwerkprotokoll auf basis einer tcp verbindung erstellen Netzwerkprogrammierung 9
L Mit Java auf Forum einloggen und dann einen Threat erstellen Netzwerkprogrammierung 4
S HTTP Request erstellen Netzwerkprogrammierung 2
L webformular automatisch erstellen, senden und auswerten . Netzwerkprogrammierung 2
G einfach Möglichkeit um Web Services erstellen Netzwerkprogrammierung 5
D HTTP Request erstellen (Form Name übergeben!) Netzwerkprogrammierung 3
clemson Ordner auf Netzlaufwerk erstellen Netzwerkprogrammierung 11
T Ordner auf FTP erstellen Netzwerkprogrammierung 4
T Mit FTP verbinden, einen Ordner erstellen und Datei löschen Netzwerkprogrammierung 3
R Eigenen FTP Server erstellen Netzwerkprogrammierung 5

Ähnliche Java Themen


Oben