Exception NullPointer Exception lors de récupération du dernier id ajouté

kouta19 Messages postés 20 Date d'inscription jeudi 21 juillet 2011 Statut Membre Dernière intervention 18 août 2014 - 7 juin 2013 à 15:21
kouta19 Messages postés 20 Date d'inscription jeudi 21 juillet 2011 Statut Membre Dernière intervention 18 août 2014 - 8 juin 2013 à 00:42
Salut tout le monde
j'utilise tomcat7 , eclipse ee et mysql.
J'ai deux tables, produit(idp,categorie...) et image(id,idp,img) ( l'utilisateur peut insérer plusieurs images du produit )
dans la table produit l'id est auto_increment. Je veux, après insérer un produit, récupérer son id afin d'ajouter les images correspondantes à la table image. tous ça dans la meme servlet (produit.java)qui est l'action du formulaire qui est dans nouveau_produit.jsp
j'ai trouvé ce code :
String rqt = "INSERT INTO produit(idp,...) values("+idp+"....)";
Statement stmte =null;
try{
stmte.executeUpdate("INSERT INTO produit values(rqt,Statement.RETURN_GENERATED_KEYS);

ResultSet rs6 = stmte.getGeneratedKeys();
int id = -1;
if(rs6.next()){
id = rs6.getInt(1);
System.out.println(id);
}

} catch (SQLException ex) {

ex.printStackTrace();
}

mais ça relève nullPointerException !!!

qu'est ce que je doit modifier pour que ça marche, et si vous avez une autre méthode veuillez me la communiquer.
merci d'avance

4 réponses

cs_AlexN Messages postés 694 Date d'inscription lundi 5 décembre 2005 Statut Membre Dernière intervention 8 janvier 2014 19
7 juin 2013 à 16:59
Statement stmte =null; 

puis
stmte.executeUpdate("INSERT INTO produit values(rqt,Statement.RETURN_GENERATED_KEYS); 


Tu déclares un objet comme null (stmte)
Puis tu invoques une méthode (executeUpdate) sur un objet que tu as précedemment declaré comme null (stmte)

D'où le NullPointerException

il faudrait faire quelquechose comme

stmte = new Statement(etc.)


avant d'utiliser la méthode executeUpdate sur l'objet.
0
kouta19 Messages postés 20 Date d'inscription jeudi 21 juillet 2011 Statut Membre Dernière intervention 18 août 2014
7 juin 2013 à 22:45
Salut AlexN merci pour votre réponse , maintenant le code ne relève aucune exception mais la valeur de l'id est toujours 0
0
cs_AlexN Messages postés 694 Date d'inscription lundi 5 décembre 2005 Statut Membre Dernière intervention 8 janvier 2014 19
7 juin 2013 à 23:02
0
kouta19 Messages postés 20 Date d'inscription jeudi 21 juillet 2011 Statut Membre Dernière intervention 18 août 2014
8 juin 2013 à 00:42
Salam
d'accord je vais voir merci.
0
Rejoignez-nous