Perchè NullPointerException????

di il
4 risposte

Perchè NullPointerException????

Ciao a tutti!!!

Con questo codice tramite ResultSetMetaData riesco a caricare in un array di stringhe prima il nome dei campi e poi col ResultSet.getString vorrei inviare in output il risultato della mia query.Mi stampa il nome del campo ed il tipo ma poi qualcosa non va nel successivo setString generando una:\"NullPointerException\".Dove sbaglio?

Questo il codice:







public void query(){

cn=ctx.CtxOpen();//apro la connessione,cn è il mio oggetto connection

try{

stmt =cn.createStatement();

rs=stmt.executeQuery(sql);


ResultSetMetaData md=rs.getMetaData();

int num=md.getColumnCount();

System.out.println(\"Numero di colonne \" + num);



String label[]=null;

for(int i=1;i<=num;i++){

System.out.println(md.getColumnName(i)+ \" \" +md.getColumnTypeName(i));



label=md.getColumnName(i);


}


while(rs.next()){

System.out.println(\"\\n\");

for(int i=1;i<=num;i++){


label=rs.getString(label);//l'errore dovrebbe essere qui!!*******

System.out.println(\" \"+label);


}

}

}

catch(SQLException exSQL){

System.err.println(\"Nation:errore nella upDate:\"

+ exSQL.getMessage());

}

catch(NullPointerException ee){System.err.println(ee.toString());}

finally{

ctx.CtxClose();

}

}






L' errore dovrebbe essere dove ho inserito gli * ma non riesco a capire dove?Come potrei comunque inviare in output il risultato di una mia query select quando non conosco appunto in numero di campi ed il loro nome e tipo?

Grazie.

4 Risposte

  • Re: Perchè NullPointerException????

    String label[]=null;
    Questa dichiarazione a cosa ti serve?

    Se volessi dichiarare un vettore, la giusta sintassi sarebbe
    String[] label = new String[[i]Dimensione[/i]]
  • Re: Perchè NullPointerException????

    Hai ragione....che distrazione!!!
    Comunque non va lo stesso.La risposta è:java.lang.NullPointerException!
  • Re: Perchè NullPointerException????

    Non riesci ad individuare in che punto salta fuori l'eccezione?
  • Re: Perchè NullPointerException????

    Risolto!!!
    Era proprio dove dicevo.Il problema era che l' array di stringhe partiva da 0 mentre l' indice dei ResultSetMetaData parte da 1.Bastava sostituire
    label=rs.getString(label) con label[i-1]=rs.getString(i);

    Grazie dell' aiuto.
Devi accedere o registrarti per scrivere nel forum
4 risposte