Funktioniert das folgende wie es sollte ?
Code:
/*
* echoserver.java
*
* Created on 22. Mai 2004, 16:48
*/
package echo;
import java.io.*;
import java.net.*;
/**
*
* @author Tassilo
*/
public class echoserver extends Thread {
private Socket in;
private Socket out;
/** Creates a new instance of echoserver */
public echoserver(Socket d, Socket e) {
out = d;
in = e;
}
/**
* @param args the command line arguments
*/
public static void main(String[] args) throws java.net.UnknownHostException, java.io.IOException {
String ip = javax.swing.JOptionPane.showInputDialog("Bitte Hostadress eingeben");
int port = java.lang.Integer.parseInt(javax.swing.JOptionPane.showInputDialog("Bitte Port eingeben"));
java.net.Socket des = new java.net.Socket(ip, port);
//BufferedReader in = new BufferedReader(new InputStreamReader( des.getInputStream()));
//PrintStream out = new PrintStream( des.getOutputStream());
System.out.println("Connection open to" + ip + ":" + port);
ServerSocket of = new ServerSocket( 1234 );
System.out.println("listening on port 1234");
new echoserver(of.accept(), des).start();
}
public void run(){
while(true)
{
try
{
BufferedReader inin = new BufferedReader(new InputStreamReader(in.getInputStream()));
BufferedReader outin = new BufferedReader(new InputStreamReader(out.getInputStream()));
PrintStream inout = new PrintStream(in.getOutputStream());
PrintStream outout = new PrintStream(out.getOutputStream());
String cur;
while(true)
{
cur = inin.readLine();
outout.println(cur);
System.out.println(":::Recived" + cur );
cur = outin.readLine();
inout.println(cur);
System.out.println(":::Recived" + cur );
outout.flush();
inout.flush();
}
}
catch(Exception ffd)
{
System.err.println(ffd);
}
}
}
}