E ai Galera,
Estou com uma dúvida…estou desenvolvendo uma aplicação com o eclipse, tenho uma classe Principal que é a interface da aplicação e estou querendo acessar um método atualize() de outra classe chamada DeletaFiles.
O trecho da Principal:
public static void atualize(){
File diretorio = new File(System.getenv("systemroot")+"\\system32\\spool\\printers\\");
File[] arquivos = diretorio.listFiles();
int aux = 0;
String output1 = "";
if(arquivos != null){
System.out.println("Verificando se há arquivos\n");
int length = arquivos.length;
output1 += "Arquivos: \n";
for(int i = 0; i < length; ++i){
File f = arquivos[i];
if(f.isFile()){
output1 += f.getName()+"\n";
aux++;
}
}
System.out.println("Tentando jogar no JTextPane\n");
Principal vai = new Principal();
vai.jTextArea.setText(output1);
if(aux>=1){
vai.jTextField.setText("Há pelo menos " + aux/2 + " arquivos presos na fila de impressão");
vai.jButton1.setEnabled(true);
vai.jMenuItem1.setEnabled(true);
}
else if(aux==0){
vai.jTextField.setText("Não há arquivos presos na fila de impressão");
vai.jButton1.setEnabled(false);
vai.jMenuItem1.setEnabled(false);
}
}
}
Na Classe DeletaFiles eu chamo o método da seguinte forma:
Principal.atualize();
e ao rodar aparece o seguinte erro:
Exception in thread “Timer-0” java.lang.NullPointerException
at Fila.Principal.atualize(Principal.java:591)
at Fila.DeletaFiles$RemindTask.run(DeletaFiles.java:87)
at java.util.TimerThread.mainLoop(Unknown Source)
at java.util.TimerThread.run(Unknown Source)
se eu tirar o tratamento de exceção.
A linha 591 é exatamente esta:
vai.jTextArea.setText(output1);
Como eu deveria proceder neste caso?
Desde já Agradeço.