NullPointerException bei Threaderstellung

mccae

Senfdazugeber
Grüße!

Ja, genau so ist es!

Wenn ich folgenden Code ausführen möchte bekomme ich eine unschöne java.lang.NullPointerException.

Der Aufrufstack:

Code:
java.lang.NullPointerException
	at at.co.lipski.twcc.config.TeeworldsConfig.write(TeeworldsConfig.java:180)
	at at.co.lipski.twcc.network.HandleClient.handleConfig(HandleClient.java:194)
	at at.co.lipski.twcc.network.HandleClient.run(HandleClient.java:133)
	at java.lang.Thread.run(Unknown Source)

Der Part wo das ganze passiert ist:

Code:
try{
	FileDeleter del = new FileDeleter(new File("twcc_server_config_"+day+"_"+month+"_"+year+"_"+hour+"_"+minute+"_"+second+".cfg"),dc.getDeletehours());
	Thread newthread = new Thread(del);
	newthread.start();
}
catch(Exception se){
	se.printStackTrace();
	return false;
}

Und hier die Klasse FileDeleter:

Code:
package at.co.lipski.twcc.logic;

import java.io.File;

public class FileDeleter implements Runnable {
	private File toDelete;
	private int hours;
	
	public FileDeleter(File delete, int hours){
		toDelete = delete;
		this.hours = hours;
	}
	@Override
	public void run() {
		long time = hours*3600000;
		try {
			Thread.sleep(time);
		} catch (InterruptedException e) {
			e.printStackTrace();
		}
		if(toDelete.exists()&&toDelete.isFile()){
			toDelete.delete();
		}
	}

}

Ich sehe keinen Fehler, jedoch wird eine NullPointerException geworfen,...

Ach, und sollte jemand fragen was das ganze überhaupt machen soll:

Meine Applikation erstellt vor dem Überschreiben der eigenen files backups die nach einer bestimmten Zeit gelöscht werden sollen. (Einstellbar 1-48 Stunden)

Dass da alles gleich so brutal absemmelt verstehe ich nicht.
Mit dem Debugger komme ich bis zu Thread newthread = new Thread(del);
Dann ist Ende im Gelände,....

Weiss irgendjemand mehr als ich?!
Wer rausfindet warum die geschichte absemmelt gekommt auch nen Keks von mir,...
 
Hi mccae,
aus Deinem Stacktrace geht draus hervor, dass Du in der Klasse TeeworldsConfig eine NullpointerException hast und zwar in Zeile 180!
Versuche dochmal falls möglich dort einen Breakpoint zu setzen und Dir wird vielleicht etwas mehr zu Deiner Situation einfallsen (sprich: ein Licht aufgehen). :p
 
Hi mccae,
aus Deinem Stacktrace geht draus hervor, dass Du in der Klasse TeeworldsConfig eine NullpointerException hast und zwar in Zeile 180!
Versuche dochmal falls möglich dort einen Breakpoint zu setzen und Dir wird vielleicht etwas mehr zu Deiner Situation einfallsen (sprich: ein Licht aufgehen). :p

Oh ja xD

Ich hab mir im debugger nocheinmal die variablen angeschaut und es hat sich herausgestellt, dass das Objekt namens dc null ist und deshalb dc.getDeletehours()); eine null pointer exception wirft.

In Zukunft werde ich mehrmals überprüfen bevor ich euch nerve,...
 
kein Problem, manchmal braucht man halt mal einen kleinen Denkanstoß von Außen, ging mir auch schon so manches Mal .
 
Zuletzt bearbeitet:

Neue Beiträge

Zurück