Galera to tendo um problema muito chato. Nas linhas 30, 39 e 48 dá NullPointerExceptions, gostaria muito q alguém pudesse me ajudar, as listas não estão nulas.
private void pesquisarSalarios(java.awt.event.ActionEvent evt) {
// limpa tabela
int numLinha= jTable1.getRowCount();
for (int contador = 0; contador < numLinha;) {
jTable1.setValueAt(null, contador, 0);
jTable1.setValueAt(null, contador, 1);
jTable1.setValueAt(null, contador, 2);
jTable1.setValueAt(null, contador, 3);
contador++;
}
String nome = tfNome.getText();
SalarioAction action = new SalarioAction();
CooperadoDAO cooperadoDAO = new CooperadoDAO();
Cooperado cooperado = new Cooperado();
cooperadoDAO.beginHibernate();
//Pesquisa Combinada...
List<Salario> lista;
List<Salario> lista1 = null;
List<Salario> lista2 = null;
List<Salario> lista3 = null;
lista = action.pesquisarTodosSalarios();
if(lista.isEmpty()) return; //Parada caso não hajam salários na pesquisa
if(nome.length()>0){
for (Iterator it = lista.iterator(); it.hasNext();){
Salario salario = (Salario)it.next();
cooperado = cooperadoDAO.buscaCooperadoId(salario.getIdCooperado());
if(cooperado.getNmCooperado().contains(nome)){
lista1.add(salario);
}
}
}else lista1 = lista;
if(boxMes.getSelectedIndex()>0){
for (Iterator it = lista1.iterator(); it.hasNext();){
Salario salario = (Salario)it.next();
if(salario.getMesCorrespondente().equals((String)boxMes.getSelectedItem())){
lista2.add(salario);
}
}
}else lista2 = lista1;
if(boxStatus.getSelectedIndex()>0){
for (Iterator it = lista2.iterator(); it.hasNext();){
Salario salario = (Salario)it.next();
if(salario.getStatus().equals((String)boxStatus.getSelectedItem())){
lista3.add(salario);
}
}
}else lista3 = lista2;
//Fim da Pesquisa Combinada
//Preenchendo a Tabela
Salario salario = new Salario();
int linha = 0;
for (Iterator it = lista3.iterator(); it.hasNext();){
if (jTable1.getRowCount() > linha){
DefaultTableModel modeloTabela = (DefaultTableModel)jTable1.getModel();
modeloTabela.setNumRows(linha+2);
}
salario = (Salario)it.next();
cooperado = cooperadoDAO.buscaCooperadoId(salario.getIdCooperado());
jTable1.setValueAt(cooperado.getNmCooperado(), linha, 0);
jTable1.setValueAt(salario.getMesCorrespondente(), linha, 1);
jTable1.setValueAt(salario.getValor(), linha, 2);
jTable1.setValueAt(salario.getNumChamados(), linha, 3);
linha++;
}
cooperadoDAO.commitTransaction();
cooperadoDAO.closeSession();
}