# PrintWriter Exception



## 8ull23y3 (10. Jan 2005)

Hallo mein Code...


Server


```
import java.io.*;
import java.net.*;

public class TestServer {
  public static void main(String[] args) throws Exception {
      ServerSocket server = new ServerSocket(502);
      Socket client = server.accept();
      BufferedReader br = new BufferedReader(new InputStreamReader(client.getInputStream()));
      PrintWriter pw = new PrintWriter(client.getOutputStream());
      pw.println("Echo");
  }
}
```

Client


```
import java.io.*;
import java.net.*;

public class TestClient {
  public static void main(String[] args) throws Exception {
      Socket client = new Socket("127.0.0.1", 502);
      BufferedReader br = new BufferedReader(new InputStreamReader(client.getInputStream()));
      PrintWriter pw = new PrintWriter(client.getOutputStream());
      pw.println("Echo");
  }
}
```

Wenn ich das versuche mit dem Jikes zu kompilieren bekomme ich eine Meldung die folgendermaßen lautet.

-> 
The return type of method "java.lang.Appendable appen(java.lang.CharSequence $1, int $2, int$3) throws IOException;" does not match the return type of accessible method "java.io.Writer append(java.lang.CharSequence $1, int $2, int $3)

und

The return type of method "java.lang.Appendable appen(char $1) throws java.IOException;" does not match the return type of the accessable method "java.io.Writer append(char $1) throws java.IOException;" declared in Type "java.io.Writer"

zur Info das ist ne Ausgabe die der Jikes in Verbindung mit Java 1.5 fabriziert. Wenn ich mit javac mache bekomme ich keine Fehlerausgabe aber es scheint trotzdem nicht zu funktionieren. Denn dann bekomme ich beim Ausführen folgende Ausgabe

Exception in thread "main" java.net.SocketException: Connection reset
        at java.net.SocketInputStream.read(SocketInputStream.java:168)
        at sun.nio.cs.StreamDecoder$CharsetSD.readBytes(StreamDecoder.java:411)
        at sun.nio.cs.StreamDecoder$CharsetSD.implRead(StreamDecoder.java:453)
        at sun.nio.cs.StreamDecoder.read(StreamDecoder.java:183)
        at java.io.InputStreamReader.read(InputStreamReader.java:167)
        at java.io.BufferedReader.fill(BufferedReader.java:136)
        at java.io.BufferedReader.readLine(BufferedReader.java:299)
        at java.io.BufferedReader.readLine(BufferedReader.java:362)
        at TestClient.main(TestClient.java:10)

aus der Serverklasse.

Für schnelle Antwort wäre ich sehr dankbar. Bye


----------



## meez (10. Jan 2005)

Hast du root Rechte?
Vielleicht liegts daran, dass du einen reservierten port <1024 verwendest....


----------



## 8ull23y3 (11. Jan 2005)

Hm wenn du die ServerKlasse anguckst siehst du das ich den Port 502 verwende...
Mit Root Rechten hat das nichts zu tun da Windows...habs heute nochmal probiert und es geht wieder
hab keine Ahung wieso.
Jikes funktioniert übrigens nicht mit der 5.0er Version von Java.


----------



## meez (11. Jan 2005)

Du brauchst auch bei Windows Adminrechte, um den Port anzusprechen.
Aber das Problem liegt ehh woanderst...


----------

