小小梦里花007 2016-12-16 08:10 采纳率: 25%
浏览 856
已采纳

同一个action类里同一个services在不同方法里一个正常获取一个为null

同一个java类:
public class LoginAction extends BaseAction implements HttpSessionListener{

   private LoginService loginService;
   setLoginService()...
   getLoginService()...

   public String execute() throws Exception{
     usdo=loginService.checkUser()....    这个loginService有值能调用checkUser(),一切正常
   }

  public void sessionDestroyed(HttpSessionEvent event) {
          loginService.updateIsFirstLogin()....这个loginService=null然后报空指针异常;
  }

}

弄不清为啥会出现这种逻辑,哪出问题,望大家指点!!!

报错:
java.lang.NullPointerException
at fmss.action.LoginAction.sessionDestroyed(LoginAction.java:743)
at org.apache.catalina.session.StandardSession.expire(StandardSession.java:806)
at org.apache.catalina.session.StandardSession.isValid(StandardSession.java:656)
at org.apache.catalina.session.ManagerBase.processExpires(ManagerBase.java:532)
at org.apache.catalina.session.ManagerBase.backgroundProcess(ManagerBase.java:517)
at org.apache.catalina.core.ContainerBase.backgroundProcess(ContainerBase.java:1352)
at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1530)
at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1540)
at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1540)
at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1519)
at java.lang.Thread.run(Unknown Source)

这个既然第一个loginService已经能获得值了,也就是说Spring注入已经成功了吧!
但为什么sessionDestroyed里的方法会为空呢?

  • 写回答

4条回答 默认 最新

  • Book1346 2016-12-16 08:21
    关注

    你程序里,loginService初始实例化在哪里初始化的?
    是配置文件配置进去?还是程序里初始化的?
    loginService = new LoginService();这句是放在哪里?
    这句如果你在execute里有,在sessionDestroyed里没有,那当然报错。
    最好是将这句放到初始化方法里,init()里

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

悬赏问题

  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 保护模式-系统加载-段寄存器