Home  >  Article  >  Java  >  Java reported a null pointer, could someone please tell me what the problem is?

Java reported a null pointer, could someone please tell me what the problem is?

php是最好的语言
php是最好的语言Original
2018-08-04 11:24:411278browse

<a href="javascript:void(0);" onclick="clearCart()" id="clear" class="clear">清空购物车</a>

//Click to clear the shopping cart event on the cart.jsp page

function clearCart(){
            if(confirm("您是否要清空购物车?")){
                location.href="${pageContext.request.contextPath }/product?method=clearCart";
            }
        }
public void service(HttpServletRequest req, HttpServletResponse resp)throws ServletException, IOException {

        req.setCharacterEncoding("UTF-8");        try {            //1.获得请求对象的method的名称
            String methodName = req.getParameter("methodName");            //2.获得当前被访问的对象的字节码对象
            Class clazz = this.getClass();//ProductServlet.class 或者

            //3.获得当前字节码对象中的指定方法
            Method method = clazz.getMethod(methodName, HttpServletRequest.class,HttpServletResponse.class);            //4执行相应功能方法
            method.invoke(this, req,resp);

            } catch (Exception e) {
                e.printStackTrace();
        }
    }

//Clear the shopping cart method

public void clearCart(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

        HttpSession session = request.getSession();
        session.removeAttribute("cart");        //跳转回cart.jsp
        response.sendRedirect(request.getContextPath()+"/cart.jsp");

    }
我点击清空就报异常了
java.lang.NullPointerException
    at java.lang.Class.searchMethods(Class.java:2832)
    at java.lang.Class.getMethod0(Class.java:2856)
    at java.lang.Class.getMethod(Class.java:1668)
    at com.itheima.web.servlet.BaseServlet.service(BaseServlet.java:25)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
    at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)
    at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:501)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:98)
    at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)
    at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1040)
    at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:607)
    at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:315)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
    at java.lang.Thread.run(Thread.java:745)
<a href="javascript:void(0);" onclick="clearCart()" id="clear" class="clear">清空购物车</a>

//Click to clear the shopping cart on the cart.jsp page Event

function clearCart(){
            if(confirm("您是否要清空购物车?")){
                location.href="${pageContext.request.contextPath }/product?method=clearCart";
            }
        }
public void service(HttpServletRequest req, HttpServletResponse resp)throws ServletException, IOException {

        req.setCharacterEncoding("UTF-8");        try {            //1.获得请求对象的method的名称
            String methodName = req.getParameter("methodName");            //2.获得当前被访问的对象的字节码对象
            Class clazz = this.getClass();//ProductServlet.class 或者

            //3.获得当前字节码对象中的指定方法
            Method method = clazz.getMethod(methodName, HttpServletRequest.class,HttpServletResponse.class);            //4执行相应功能方法
            method.invoke(this, req,resp);

            } catch (Exception e) {
                e.printStackTrace();
        }
    }

//Clear shopping cart method

public void clearCart(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

        HttpSession session = request.getSession();
        session.removeAttribute("cart");        //跳转回cart.jsp
        response.sendRedirect(request.getContextPath()+"/cart.jsp");

    }
我点击清空就报异常了
java.lang.NullPointerException
    at java.lang.Class.searchMethods(Class.java:2832)
    at java.lang.Class.getMethod0(Class.java:2856)
    at java.lang.Class.getMethod(Class.java:1668)
    at com.itheima.web.servlet.BaseServlet.service(BaseServlet.java:25)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
    at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)
    at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:501)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:98)
    at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)
    at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1040)
    at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:607)
    at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:315)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
    at java.lang.Thread.run(Thread.java:745)

Related articles:

Please help me solve this null pointer exception

I encountered a difficult problem when matching the PHP environment. Please help me!

The above is the detailed content of Java reported a null pointer, could someone please tell me what the problem is?. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn