Erreur:::java.lang.NumberFormatException: null

natasha82 Messages postés 55 Date d'inscription   Statut Membre Dernière intervention   -  
natasha82 Messages postés 55 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour, j'ai fait un test pour la suppression ,mais a chaque fois je la valide il m'affiche une exception: la voila
java.lang.NumberFormatException: null
java.lang.Long.parseLong(Long.java:404)
java.lang.Long.parseLong(Long.java:483)
Servlet.AjoutServl.doPost(AjoutServl.java:39)
javax.servlet.http.HttpServlet.service(HttpServlet.java:641)
javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
sun.reflect.GeneratedMethodAccessor31.invoke(Unknown Source)
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
java.lang.reflect.Method.invoke(Method.java:606)
org.apache.catalina.security.SecurityUtil$1.run(SecurityUtil.java:273)
org.apache.catalina.security.SecurityUtil$1.run(SecurityUtil.java:270)
java.security.AccessController.doPrivileged(Native Method)
javax.security.auth.Subject.doAsPrivileged(Subject.java:536)
org.apache.catalina.security.SecurityUtil.execute(SecurityUtil.java:305)
org.apache.catalina.security.SecurityUtil.doAsPrivilege(SecurityUtil.java:165)



voici le code que j'ai fait:

protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {

//recuperer les information
if (request.getParameter("action")!=null){
op.remove(Long.parseLong(request.getParameter("id")));

request.getRequestDispatcher("AjoutProduit.jsp").forward(request, response);
// traitement


}




merci d'avance

1 réponse

KX Messages postés 16761 Date d'inscription   Statut Modérateur Dernière intervention   3 020
 
Bonjour,

Ton test pour savoir si le paramètre "action" est non null ne permet pas de s'assurer que le paramètre "id" sera non null aussi... or il l'est et ça entraîne une erreur.

if (request.getParameters("id")!=null){
    op.remove(Long.parseLong(request.getParameter("id")));

Remarque ce test ne doit pas t'empêcher de faire un try catch quand même, il n'est pas exclu que le paramètre "id" puisse être n'importe quoi d'autre qu'un entier...
La confiance n'exclut pas le contrôle
0
natasha82 Messages postés 55 Date d'inscription   Statut Membre Dernière intervention  
 
bonsoir,j'ai fait ce que vous m'avez donnez mais quand je clique sur le boutton supprimer il m'ajoute une ligne avec avec la valeur "null" partout au lieu de supprimer la ligne souhaiter.merci
0
natasha82 Messages postés 55 Date d'inscription   Statut Membre Dernière intervention  
 
et voici aussi le formulaire qui a le truc""action"



<form action="Ajou" method="post">


<input type="hidden" name="id " value="<%=e.getID()%>"/>
<input type="hidden" name="action" value="supprimer"/>
<input type="submit" value="supprimer"/>


</form>
0