从IntelliJ IDE本地运行时,防止Tomcat序列化会话

时间:2017-08-03 21:04:16

标签: session tomcat serialization intellij-idea tomcat8

我通过捆绑的 Tomcat和TomEE集成插件从Tomcat 2017.2 Ultimate版本成功运行IntelliJ 8.5.16。

当停止Tomcat服务器时,我得到的错误是我的会话中的某些对象不可序列化。我不关心序列化会话,因为我希望在服务器退回或此类事件的情况下启动新的用户会话。

➠如何在从IntelliJ调用时阻止Tomcat序列化会话?

1 个答案:

答案 0 :(得分:2)

Tomcat功能

这是一个纯粹的tomcat功能,与您启动它的方式无关。来自docs

  

禁用会话持久性

     

如上所述,默认情况下每个Web应用程序都有标准   管理器实现配置,并执行会话持久性   重启。要禁用此持久性功能,请创建一个上下文   Web应用程序的配置文件并添加以下内容   元素那里:

     

<Manager pathname="" />

禁用会话持久性的示例

例如,在您的网络应用的META-INF文件夹中,添加context.xml文件,如下所示。

<!-- 'context.xml' file in 'META-INF' folder of your web app -->
<Context>
    <Manager pathname="" />
</Context>

您应该可以在IDE中将其添加到项目中。如果尚未在项目中配置META-INF文件夹,则可能需要显式添加该文件夹。这是添加文件夹和文件后IntelliJ 2017年的屏幕截图。

screen shot of IntelliJ project structure where a 'META-INF' folder has been added to the project so as to contain a 'context.xml' file