代码:
public class QueryApplyController  extends AbstractController {
private UserService userService;
protected ModelAndView handleRequestInternal(HttpServletRequest
req, HttpServletResponse rsp) throws Exception {
Map<String, String> criteria = new HashMap<String, String>();
ArrayList<UserApplyPojo> list = new ArrayList<UserApplyPojo>();
String applyType = req.getParameter("SelectApplyType");
String applyDateStart = req.getParameter("applyDateStart");
String applyDateEnd = req.getParameter("applyDateEnd");
if(!applyType.equals("4")){
criteria.put(KeyNames.TYPE, applyType);
criteria.put(KeyNames.APPLY_DATE_START, applyDateStart);
criteria.put(KeyNames.APPLY_DATE_END, applyDateEnd);
list = this.getUserService().queryApply(criteria); //在这里报空指针异常
                }else{
//全部类型
criteria.put(KeyNames.APPLY_DATE_START, applyDateStart);
criteria.put(KeyNames.APPLY_DATE_END, applyDateEnd);
list = this.getUserService().queryApply1(criteria);//这里也会报空指针 }
Map model = new HashMap();
model.put("queryApply", list);

return new ModelAndView("applyPage", model);
}
public UserService getUserService() {
return userService;
} public void setUserService(UserService userService) {
this.userService = userService;
}}异常:
java.lang.NullPointerException
at com.isl.pms.controller.common.QueryApplyController.handleRequestInternal(QueryApplyController.java:38)
at org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:153)
at org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:48)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:875)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:807)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:571)
at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:511)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at com.isl.pms.controller.filter.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:27)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:861)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:606)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
at java.lang.Thread.run(Thread.java:619)
我还试了试,在这个类里边写其他的只要是调用数据库的都会报空指针异常。我的其他功能的controller类也都这么写的,其他的也没报错啊,我是新手小白,希望大家能帮我看看。(顺便想说,我有个两个其他的类明明是调用的同一个函数,传的参数也一样,但一个报空指针,一个运行正常,都把我弄懵了)java 空指针异常java空指针异常

解决方案 »

  1.   

    请问userService没注入是什么意思?
      

  2.   

    userServicem没设置值。。所以是空指针。
      

  3.   

    userService 初始化一个值 null
      

  4.   

     this.getUserService()返回一个null,再执行queryApply(XX)当然是nullpointerexception
      

  5.   

    userService这个对象要注入,不知道你们是通过配置xml,还是注解,注解的话就如下
    @Autowired
    private UserService userService;
      

  6.   

    @Resource
    private UserService userService;
    如果有用到注解的话