ola,
quando pesquiso no banco um resultado da o erro mencionado acima mas eu sabia q isto poderia ocorrer e tentei usar um outro if para controlar isto mas ele não funciona alguém pode me ajudar a arrumar este codigo ja q ele não esta funcionando ou pode me explicar o q estou fazendo errado para q eu possa arrumar?obg
o cod é este [code]System.out.println(“select valor_real_pgto from financa_aluno where rc_aluno=’”+ t2.getText() +"’");
resultado = comando.executeQuery(“select valor_real_pgto from financa_aluno where rc_aluno=’”+ t2.getText() +"’");//
if(resultado.next())
{
if(resultado.getObject(1).toString()!=null)
{
ft[1][k].setText(resultado.getObject(1).toString());//nullpointerexption
k++;
}
else
{
JOptionPane.showMessageDialog(null, “Não há registros de pagamento!”);
System.out.println(“else”);
}
System.out.println(ft[1][k].getText()+k);
}
if(!(resultado.next()))
{
JOptionPane.showMessageDialog(null, “Não há registros de pagamento!”);
}
else
JOptionPane.showMessageDialog(null, "Esgotou as possibilidades");
Em qual linha esta dando erro de NullPointerException?
Outra coisa aki:
if(resultado.getObject(1).toString()!=null)
{
ft[1][k].setText(resultado.getObject(1).toString());//nullpointerexption
k++;
}
vc ta pegando o resultado e dando um .toString(), e se o valor for Null ele da NullPointerExcpetion…
Não sei se existe alguma implementação melhor, mas uso o try / catch nesse caso para detectar o nullpointerexception e assim determinar quando o resultado da pesquiza não retornou nada ( informo : “Vazio” ).
[quote=andre_teprom]Não sei se existe alguma implementação melhor, mas uso o try / catch nesse caso para detectar o nullpointerexception e assim determinar quando o resultado da pesquiza não retornou nada ( informo : “Vazio” ).
ta dando erro na linha ft[1][k].setText(resultado.getObject(1).toString());//nullpointerexption
troquei oresultado.getObject(1).toString() porresultado.getString(1)
mas mesmo assim coninua dando erro na mesma linha =[
sim sim é este o erro eu até modifiquei o codigo o jeito que tu disse dai ficou assim
if(resultado.getString(1)!=null)
{
try{
ft[1][k].setText(resultado.getString(1));
k++;
}
catch(NullPointerException e){
System.out.println(e);
}
e no console fica
select valor_real_pgto from financa_aluno where rc_aluno='12'
java.lang.NullPointerException
neste trecho de código sim mas eu acho que é porque alguns alunos tem este campo vazio no banco tipo quando é o primeiro pgto eu queria achar uma maneira de contornar isto tipo se esta vazio só não troca o texto dos textfields se não for vazio troca pelo resultado do banco isto é possivel?
DeGuedes,eu tentei desta forma mas continua dando erro dai não da nullpointer nakela linha ft[1][k].setText(resultado.getString(1)); mas ocorre na linhaft[1][k].setText("");
System.out.println("resultado 1 "+resultado.getString(1)); antes do if
e olha so como ficou o consoleselect valor_real_pgto from financa_aluno where rc_aluno='12'
resultado 1 400.0
java.lang.NullPointerException
resultado 1
java.lang.NullPointerException
resultado 1
java.lang.NullPointerException
resultado 1
java.lang.NullPointerException
resultado 1
java.lang.NullPointerException
não entendo pq não troca o txt pelo menos pelo valor do primeiro resultado
ft é uma matriz de jformatted]textfield q criei no inicio da classe JFormattedTextField ft[][]=new JFormattedTextField[l.length][l.length];
ft[1][k] é um objeto desta matriz é q tipo cada objeto de ft recebera um resultado diferente do banco