Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/360.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如果重新启动tomcat,则为NullPointerException_Java_Session_Jsf 2_Logout - Fatal编程技术网

Java 如果重新启动tomcat,则为NullPointerException

Java 如果重新启动tomcat,则为NullPointerException,java,session,jsf-2,logout,Java,Session,Jsf 2,Logout,我已经使用JSF2.0创建了web应用程序。我已经创建了一个会话bean,我在其中保存登录员工的id 问题是,当我在编码中做一些更改并重新启动tomcat online时,我会得到空指针异常(如果我没有注销系统,如果我注销系统,我不会得到空指针异常)。为了克服这个问题,我必须清除浏览器的历史记录,然后问题得到解决 以下是我为project在线制作所遵循的步骤 对代码进行更改吗 将war文件复制到我的VPS 关闭tomcat 删除根文件夹 将war文件名更改为ROOT.war 再次启动雄猫 请建议

我已经使用JSF2.0创建了web应用程序。我已经创建了一个会话bean,我在其中保存登录员工的id

问题是,当我在编码中做一些更改并重新启动tomcat online时,我会得到空指针异常(如果我没有注销系统,如果我注销系统,我不会得到空指针异常)。为了克服这个问题,我必须清除浏览器的历史记录,然后问题得到解决

以下是我为project在线制作所遵循的步骤

  • 对代码进行更改吗
  • 将war文件复制到我的VPS
  • 关闭tomcat
  • 删除根文件夹
  • 将war文件名更改为ROOT.war
  • 再次启动雄猫

  • 请建议我做什么……

    你想做什么

    当您不关闭浏览器时,用户仍在会话中,cookies、会话id等存在

    现在,当您在不关闭IE/删除历史记录(如您所说)的情况下重新启动服务器时,浏览器将查找服务器上不存在的会话id(如您重新启动它时),因此它会抛出nullPointerException

    你不需要做任何事情,这是预期的行为。 重新启动服务器前注销或重新启动服务器后关闭浏览器(请注意,新选项卡将无法工作,因为会话在选项卡中维护)。您的程序将正常工作,并且不会得到任何空指针


    希望这有帮助

    你的问题是什么?怎么办?不要将登录用户存储在会话中,将凭据(会话id)保存在Cookie中,并每次从数据库中获取用户。在这里提问,在这里回答。然后你需要什么?@ILLA:我没有在这里回答…同时删除工作/Catalina/。。。文件夹。还要确保在问题中发布NullPointerException堆栈跟踪。它是什么代码,在哪里抛出异常?谢谢你的回答。但是,如果我忘记注销并重新启动服务器怎么办?如何克服空指针异常?我必须得到解决方案,因为我不能去告诉所有员工注销…如果你忘记注销并重新启动服务器。在这种情况下,如果关闭现有浏览器窗口并打开新窗口。它会像预期的那样工作。浏览器中的会话将一直保持到u注销。或者关闭浏览器。还有,如果你真的想做这样的事情。您可以编写代码来清除析构函数中的cookie、会话ID等。您是否希望员工能够访问服务器并重新启动它?