2014-04-10 3 views
0

일부 값을 전달하는 데이터베이스에서 값을 검색하기위한 코드를 작성했습니다.javax.servlet.ServletException : NullPointerException

AttendenceServiceImpl serveceimpl; 
    public ActionForward getStudentInfo(ActionMapping mapping, 
      ActionForm form, HttpServletRequest request, 
      HttpServletResponse response) { 
     System.out.println("-----------------getStudentInfo Start----------------------"); 



     String category = request.getParameter("categoryVal"); 
     String classId = request.getParameter("classidVal"); 
     String sectionId = request.getParameter("sectionidVal"); 
     System.out.println("----"+category+"---"+classId+"---"+sectionId); 

     serveceimpl.getStudentinfo(category,classId,sectionId); 

여기 Category, classidsection 값이오고있다 :

는 아래 Action 클래스 코드입니다.

service 클래스의 메소드를 Action 클래스에서 호출합니다.

public List getStudentinfo(String category, String classId, String sectionId) { 
     System.out.println("------------getStudentinfo SERVICE START---------------------"); 
     List data=mainpage.getStudentinfo(category, classId, sectionId); 
     System.out.println("------------getStudentinfo SERVICE END---------------------"); 
     return data; 
    } 

그러나 Action 수업 시간에 내가 제어하기 전에, NullPointerException가지고있어이 Service 클래스로 입력 :

는 아래 Service 클래스 코드입니다.

-----------------getStudentInfo Start---------------------- 
----1---1---1 

    javax.servlet.ServletException: java.lang.NullPointerException 
     at org.apache.struts.action.RequestProcessor.processException(RequestProcessor.java:520) 
     at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:427) 
     at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:228) 
     at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913) 
     at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:462) 
     at javax.servlet.http.HttpServlet.service(HttpServlet.java:647) 
     at javax.servlet.http.HttpServlet.service(HttpServlet.java:728) 
     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305) 
     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) 
     at com.centris.campus.admin.AuthuFilter.doFilter(AuthuFilter.java:232) 
     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243) 
     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) 
     at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222) 
     at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123) 
     at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472) 
     at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171) 
     at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99) 
     at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:936) 
     at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118) 
     at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407) 
     at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1004) 
     at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589) 
     at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:312) 
     at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source) 
     at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) 
     at java.lang.Thread.run(Unknown Source) 
    Caused by: java.lang.NullPointerException 
     at com.centris.campus.actions.AttendenceAction.getStudentInfo(AttendenceAction.java:58) 
     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
     at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) 
     at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) 
     at java.lang.reflect.Method.invoke(Unknown Source) 
     at org.apache.struts.actions.DispatchAction.dispatchMethod(DispatchAction.java:269) 
     at org.apache.struts.actions.DispatchAction.execute(DispatchAction.java:170) 
     at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:425) 
     ... 24 more 
    Apr 10, 2014 12:44:47 PM org.apache.catalina.core.StandardWrapperValve invoke 
    SEVERE: Servlet.service() for servlet [action] in context with path [/e-CampusPro] threw exception [java.lang.NullPointerException] with root cause 
    java.lang.NullPointerException 
     at com.centris.campus.actions.AttendenceAction.getStudentInfo(AttendenceAction.java:58) 
     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
     at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) 
     at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) 
     at java.lang.reflect.Method.invoke(Unknown Source) 
     at org.apache.struts.actions.DispatchAction.dispatchMethod(DispatchAction.java:269) 
     at org.apache.struts.actions.DispatchAction.execute(DispatchAction.java:170) 
     at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:425) 
     at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:228) 
     at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913) 
     at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:462) 
     at javax.servlet.http.HttpServlet.service(HttpServlet.java:647) 
     at javax.servlet.http.HttpServlet.service(HttpServlet.java:728) 
     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305) 
     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) 
     at com.centris.campus.admin.AuthuFilter.doFilter(AuthuFilter.java:232) 
     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243) 
     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) 
     at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222) 
     at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123) 
     at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472) 
     at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171) 
     at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99) 
     at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:936) 
     at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118) 
     at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407) 
     at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1004) 
     at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589) 
     at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:312) 
     at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source) 
     at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) 
     at java.lang.Thread.run(Unknown Source) 

나에게 그것은 나를 위해 도움이되는 솔루션을 제공하십시오 : 아래

는 스택 트레이스입니다.

답변

3

serveceimpl은 여기에서 null이어야합니다. 유효한 값이 있는지 확인하십시오.

다음은 그것을

AttendenceServiceImpl serveceimpl;

+0

감사를 초기화하지 않은 참조를 많이, 그것은 다행 – user2996174

+0

좋은 도움이 워킹 그것. 당신은 환영합니다 :) 질문을 닫으려면 대답을 수락하십시오. 즉, 답의 왼쪽에있는 눈금을 클릭하십시오. – Keerthivasan