Hallo zusammen,
das ist dann wohl mein erster Thread / Beitrag hier ;-)
Ich fange gerade mit JAVA an. Komme ursprünglich von PHP. Ich fange also nicht ganz bei Null an und habe schon Vorkenntnisse.
Also zu meinem Problem / Frage. Ich würde gerne zu Übungszwecken eine kleine Server / Client Anwendung machen und stoße da auf Fehler.
Ich habe eine Klasse, die den Server bereitstellt. ( Normaler ServerSocket wartet auf eingehende Verbindungen )
Eine Andere ist der "Client". Generell klappt auch alles, wenn ich in der Clientklasse selber Daten abschicke kommt auch alles korrekt zurück.
Da das ganze aber mit einer GUI versehen werden soll kommt hier ein Fehler.
Ich rufe also aus einer anderen Klassen den Client auf und verbinde mich mit dem Server (Klappt)
Ich starte die Clientklasse in einem eigenen Thread. ( Klappt )
Wenn ich dann aber von meiner GUI-Klasse aus eine Nachricht schreiben will, bekomme ich immer eine NullPointer Exception. Ich habe schon den halben Tag gesucht woran es liegen könnte. Vielleicht kann mir ja jemand einen Tipp geben
Code "Client"
Code "GUI-Klasse"
Der Fehler:
das ist dann wohl mein erster Thread / Beitrag hier ;-)
Ich fange gerade mit JAVA an. Komme ursprünglich von PHP. Ich fange also nicht ganz bei Null an und habe schon Vorkenntnisse.
Also zu meinem Problem / Frage. Ich würde gerne zu Übungszwecken eine kleine Server / Client Anwendung machen und stoße da auf Fehler.
Ich habe eine Klasse, die den Server bereitstellt. ( Normaler ServerSocket wartet auf eingehende Verbindungen )
Eine Andere ist der "Client". Generell klappt auch alles, wenn ich in der Clientklasse selber Daten abschicke kommt auch alles korrekt zurück.
Da das ganze aber mit einer GUI versehen werden soll kommt hier ein Fehler.
Ich rufe also aus einer anderen Klassen den Client auf und verbinde mich mit dem Server (Klappt)
Ich starte die Clientklasse in einem eigenen Thread. ( Klappt )
Wenn ich dann aber von meiner GUI-Klasse aus eine Nachricht schreiben will, bekomme ich immer eine NullPointer Exception. Ich habe schon den halben Tag gesucht woran es liegen könnte. Vielleicht kann mir ja jemand einen Tipp geben
Code "Client"
Java:
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.io.OutputStreamWriter;
import java.net.Socket;
import java.net.UnknownHostException;
public class Arbeiter implements Runnable {
public BufferedWriter writer;
public void schreibeNachricht() throws IOException {
writer.write("Test\n");
writer.flush();
}
@Override
public void run() {
try {
// SOCKET VERBINDEN
Socket client = new Socket("localhost", 1234);
// INPUTSTREAM
InputStream in = client.getInputStream();
BufferedReader reader = new BufferedReader(new InputStreamReader(in));
// OUTPUTSTREAM
OutputStream out = client.getOutputStream();
writer = new BufferedWriter(new OutputStreamWriter(out));
// RUN
String s = null;
while((s = reader.readLine()) != null) {
System.out.println(s);
}
// CLOSE
writer.close();
reader.close();
} catch (UnknownHostException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
Code "GUI-Klasse"
Java:
import java.io.IOException;
public class ThreadTest {
/**
* @param args
* @throws IOException
*/
public static void main(String[] args) throws IOException {
Arbeiter test = new Arbeiter();
Thread erster = new Thread(test);
erster.start();
test.schreibeNachricht();
}
}
Der Fehler:
Java:
Exception in thread "main" java.lang.NullPointerException
at worker.Arbeiter.schreibeNachricht(Arbeiter.java:18)
at worker.ThreadTest.main(ThreadTest.java:17)
Zuletzt bearbeitet von einem Moderator: