繁体   English   中英

JAX-RS资源的不同会话ID

[英]Different session IDs for JAX-RS resources

我在WildFly 8.x上遇到了一个非常奇怪的行为(还通过8.1和8.0进行了测试)。 如果我将WAR部署为ROOT(在jboss-web.xml中将“ /”设置为context-root),则我的JAX-RS资源类将具有不同的会话ID(每个资源类将具有唯一的会话ID)。 但是实际上,如果我将'/'以外的其他内容设置为上下文根,那么一切将按我最初的预期工作(每个JAX-RS资源类共享同一会话)。 我知道REST服务是无状态的,我不必担心会话,但是我很好奇它为什么会这样。 有人有什么想法吗?

谢谢!

这是一个最小示例项目,您可以在其中重现此问题: https : //github.com/aberkes/cdi-sessionscoped-bean-demo

这个想法是,默认情况下,如果您部署到ROOT,则jboss不会使用固定的cookie路径参数。 当您有其他应用程序在不同的子文件夹中运行并且需要它们自己的独立会话时,便是如此。 要更改此行为,您可以使用

<session-config>
<cookie-config>
<path>/</path>
</cookie-config> 
</session-config>

web.xml中的参数。 然后,所有jsession将被绑定到根路径。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM