Erreur:::java.lang.NumberFormatException: null
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:
merci d'avance
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
-
ModérateurBonjour,
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