为什么jsessionid附加到h:outputLink?

时间:2016-06-03 12:05:38

标签: jsf primefaces wildfly

应用程序在wildfly-10.0.0.Final上运行。

web.xml指定为

<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
id="WebApp_ID" version="3.1">

session-config为:

<session-config>
    <tracking-mode>COOKIE</tracking-mode>
</session-config>

但是在xhtml文件中,当我加载第一页时,h:outputLink标记生成的链接会被jsessionid附加。

<h:outputLink value="/index">
    <h:outputText value="index"/>
</h:outputLink>

Generated link: http://localhost:8080/index;jsessionid=[...]

Java EE 7项目正在使用:

  • primefaces 5.3
  • omnifaces 2.3
  • prettyfaces 2.0.12.Final
  • jsf-api 2.2.6
  • el-impl 2.2
  • jstl 1.2
  • jsp-api 2.1

如果我删除附加的jsessionid并加载新页面,那么在cookie中会生成一个新的jsessionid,但是当点击其他链接时,它会被保留并且永远不会改变,也不会附加在URL中。

什么可能导致这种行为,我怎么能阻止它发生?我希望URL中没有jsessionid,因此cookie中只有一个。

0 个答案:

没有答案