Extremefall
Mitglied
Hallo, ich versuche momentan, eine Verbindung zwischen zwei PCs einzurichten. Das ganze soll über Sockets funktionieren.
Leider wird der Text, der vom Client gesendet wird, nicht beim Server ausgegeben. Über den localhost klappt es. Die IP vom Router stimmt und es ist beim Router NAT (Portforwarding) aktiviert.
Client:
Server:
Aufruf:
Wo lieft wohl der Fehler? Könnt ihr mir weiterhelfen?
Leider wird der Text, der vom Client gesendet wird, nicht beim Server ausgegeben. Über den localhost klappt es. Die IP vom Router stimmt und es ist beim Router NAT (Portforwarding) aktiviert.
Client:
Code:
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.io.OutputStreamWriter;
import java.io.PrintWriter;
import java.net.InetAddress;
import java.net.Socket;
import java.net.UnknownHostException;
public class Client {
static Socket clientSocket;
public static void connectToSoccet(InetAddress IP, int port) {
try {
Socket clientSocket = new Socket(IP, port);
PrintWriter printWriter = new PrintWriter(new OutputStreamWriter(
clientSocket.getOutputStream()));
printWriter.println("hhi");
printWriter.flush();
System.out.println(clientSocket.isConnected());
clientSocket.close();
} catch (UnknownHostException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
Code:
import java.net.*;
import java.io.*;
public class Server {
public Server(int port) throws Exception {
ServerSocket socketServer = new ServerSocket(port);
while (true) {
Socket client = socketServer.accept();
InputStream input = client.getInputStream();
BufferedReader stdIn = new BufferedReader(new InputStreamReader(
input));
String userInput;
while ((userInput = stdIn.readLine()) != null) {
System.out.println("echo: " + userInput);
}
}
}
}
Code:
Java Code:
Client.connectToSoccet(InetAddress.getByName("xxx.xxx.xxx.xx"),4447);
// oder für den Server
Server server = new Server(4447);
Wo lieft wohl der Fehler? Könnt ihr mir weiterhelfen?
Zuletzt bearbeitet: