Exception in thread "Thread-3" java.lang.NullPointerException

Galera estou rodando minha aplicação, porém está gerando Exception in thread “Thread-3” java.lang.NullPointerException, detalhe estou referenciando meu caminho.

Não consigo ver no que erro…Alguem pode me dar uma força??

Essa é a parte do codigo onde passo como parametro minha tarefa tarefasLM.addLinha(tarefas);

[code]
public class AtualizadorTarefa extends Thread {
// private ServicoTarefa repo;
private Tarefa tarefas;
private TarefasListModel tarefasLM;
private int UltimaTarefaObtida = 0;
private ControllerTarefa controlador;

public AtualizadorTarefa() {
	try {
		controlador = new ControllerTarefa();
		this.start();
		return;
	} catch (InfraException e) {

		e.printStackTrace();
	}
}

public void run() {

	try {
		if (UltimaTarefaObtida <= controlador.obterQuantidadeTarefas()) {
			for (UltimaTarefaObtida = 0; UltimaTarefaObtida <= controlador
					.obterQuantidadeTarefas(); UltimaTarefaObtida++) {
				tarefas = controlador.obterTarefa(UltimaTarefaObtida);
				System.out.println("Ultima tarefa " + tarefas);
				tarefasLM.addLinha(tarefas);
				Thread.sleep(2000);
			}
		}
		return;

	} catch (InterruptedException e) {
		return;
	}
}

}[/code]

Já neste codigo é onde eu tenho o metodo (ultimo dessa classe) que irá receber o parametro

[code]
public class TarefasListModel extends AbstractTableModel
{
/**
*
*/
private static final long serialVersionUID = -6353415277910146399L;
private static String[] colunas = { “Status”, “Início”, “Prazo”, “Título” };
private List tarefas;

public TarefasListModel(ControllerTarefa ct)
{
	tarefas = new ArrayList<Tarefa>();
	if (ct != null)
	{
		for (int x = 0; x < ct.obterQuantidadeTarefas(); x++)
		{
			System.out.println("Tarefas " + tarefas);
			tarefas.add(ct.obterTarefa(x));
		}
	}

}

public void removeTarefa(int pos)
{
	tarefas.remove(pos);
	fireTableDataChanged();
}

@Override
public int getColumnCount() {
	return 4;
}

@Override
public int getRowCount() {
	System.out.println("Tarefas " + tarefas);
	return tarefas.size();
}

@Override
public Object getValueAt(int row, int col) {
	
	Tarefa t = tarefas.get(row);
	
	switch(col)
	{		
		case 0: 
			return t.getStatus();
		case 1: 
			return t.getDataInicio();
		case 2: 
			return t.getDataPrazo();
		case 3: 
			return t.getTitulo();
		default :
			throw new IllegalArgumentException("Coluna Inválida: " + col);
				
	}
}

public String getColumnName(int pos){
	return colunas[pos];
}

public void addLinha(Tarefa t){
	tarefas.add(t);
	super.fireTableRowsInserted(getColumnCount()-1, getRowCount()-1);
	System.out.println("Tarefa " + t + " acabou de ser adicionada");
}

}[/code]

Se alguem puder me ajudar agradeço muito.

Galera descobri o erro já…

é necessario somente dar um tarefasLM = new TarefasListModel(controlador);

:smiley:

Você não deveria ter criado o objeto TarefasListModel antes de usa-lo ?

 tarefasLM.addLinha(tarefas);