Tomcat的context.xml好像坏了,如何正确设置sessionCookiePath?

时间:2018-02-10 16:03:54

标签: java tomcat

此问题与上一个问题有关:Java servlet session not working properly with NGinx, how to fix?

I solved the above question when I changed "<Context>" to :

<Context sessionCookiePath="/">
...
</Context>

该更改发生在 /opt/tomcat85/conf/context.xml 中,该更改不在我的.war文件中。

现在我希望更改发生在我自己的应用程序中,所以我需要更改我的C:\ Dir_GATE_Web \ web \ META-INF中的“context.xml”[所以这只是更改影响我自己的应用程序]

在更改之前,我的C:\ Dir_GATE_Web \ web \ META-INF \ context.xml看起来像这样:

<?xml version="1.0" encoding="UTF-8"?>
<Context path=""/>

更改后,它看起来像这样:

<?xml version="1.0" encoding="UTF-8"?>
<Context path=""/>
<Context sessionCookiePath="/">    
</Context>

但是在我编译之后,我收到了以下错误:

  

[致命错误]:3:2:根元素后面的文档中的标记必须格式正确。
      C:\ Dir_GATE_Web \ nbproject \ build-impl.xml:1048:部署错误:Tomcat配置文件C:\ Dir_GATE_Web \ web \ META-INF \ context.xml似乎已损坏。请确保它是可解析且有效的。

我不熟悉context.xml文件的正确格式,正确的方法是什么?

2 个答案:

答案 0 :(得分:1)

同一级别的Apache Tomcat Configuration - Common Attributes文档sessionCookiePathpath上下文路径)。你有两个上下文,你想要一个(每个应用程序)。将其更改为

<Context path="" sessionCookiePath="/" />

答案 1 :(得分:0)

根据Elliott Frisch的建议,以下修复解决了这个问题: