HTTP Status 500 - java.lang.NumberFormatException: null

Erstelle ich ein standard-dynamic-web-Projekt, das wie ein Servlet, einen filter zum filtern der Anfrage-und jsp-Seiten.
Nehme ich die Anzahl der Bücher willkommen.jsp und je nach der Anzahl bin ich dem füllen der Eingabe-Felder auf hinzufügen.jsp. Ich will die Daten filtern, die durch die add.jsp. Wenn ich die Daten überprüfen durch Regex, zeigte mir Fehler an. Außerdem ist mein flow korrekte, D. H. von der start FILTER --> CONTROLLER --> FILTER - > SEITE, und so weiter???

Fehler:
java.lang.NumberFormatException: null

voller trace ist wie:


HTTP Status 500 - java.lang.NumberFormatException: null

type Exception report

message java.lang.NumberFormatException: null

description The server encountered an internal error that prevented it from fulfilling this request.

exception

org.apache.jasper.JasperException: java.lang.NumberFormatException: null
    org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:549)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:470)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
    com.filter.RequestFilter.doFilter(RequestFilter.java:107)

root cause

java.lang.NumberFormatException: null
    java.lang.Integer.parseInt(Unknown Source)
    java.lang.Integer.parseInt(Unknown Source)
    org.apache.jsp.WEB_002dINF.add_jsp._jspService(add_jsp.java:139)
    org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:432)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
    com.filter.RequestFilter.doFilter(RequestFilter.java:107)

Den code, wo Ihr es zeigt, ist:

public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
    //TODO Auto-generated method stub
    //place your code here
    boolean flag = true;
    HttpServletRequest httpServletRequest = (HttpServletRequest) request;
    HttpServletResponse httpResponse = (HttpServletResponse) response;
    httpServletRequest.getServletPath();
    System.out.println(httpServletRequest.getServletPath());


    String address = InetAddress.getLocalHost().getHostAddress();
    System.out.println(address); 


    //For the first time (Welcome page) i will be 0 so that it will perform first if

    if(i == 0)
    {
        System.out.println(i);
        if(verify(address))
        {
            chain.doFilter(request, response);
            i++;
        }

        else
        {
            RequestDispatcher requestDispatcher = httpServletRequest.getServletContext().getRequestDispatcher("/WEB-INF/forbidden.jsp");
            requestDispatcher.forward(request, response);
            return;
        }

    }

    //For the second time (Controller) i will be 1 so that it will perform first if


    else if(i == 1)
    {
        System.out.println(i);
        i++;
        System.out.println("after ++"+i);
        chain.doFilter(request, response);
    }

    //For the second time (add page) i will be 2 so that it will perform first if


    else if(i == 2)
    {

        if(specialChara(httpServletRequest))
            {
                System.out.println(i);
                System.out.println("done");
                i++;
                chain.doFilter(request, response);
            }

            else
            {
                System.out.println(i);
                flag = false;
                System.out.println(""+httpServletRequest.toString()+ "\n"+httpResponse.toString());
                RequestDispatcher requestDispatcher = httpServletRequest.getServletContext().getRequestDispatcher("/WEB-INF/add.jsp");
                requestDispatcher.forward(request, response);

            }
    }

    //For the third time (Controller) i will be 2 so that it will perform first if

    else if(i == 3)
    {
        System.out.println(i);
        i++;
        chain.doFilter(request, response);
        i = 0;
    }

Seine Angabe der Fehler auf der Linie der vorwärts - () in der Schleife i==2.
Was könnte das Problem sein?

link hinzufügen.jsp ist https://docs.google.com/document/d/1fOzymYvlLXS577DrSrznRoeBnI7_hMmuqzFoK02xKoU/edit?usp=sharing

Schreibe einen Kommentar