Seam:如何从Servlet-Request获取会话ID

时间:2012-02-20 23:29:01

标签: servlets seam seam2

我有一个很大的Seam项目,想要提供一些XML或二进制数据而不需要任何JSF操作或干扰。

所以我决定使用servlet。我使用的方法在这里描述: http://www.seamframework.org/Documentation/ReplacingServletsWithSeamResources

实际上,我正在使用两个提供不同信息的servlet。

我现在要实现的是我可以使用session-id跟踪每个会话。 但是:每次调用servlet时,我都会得到一个新的session-id。

在一个论坛中,他们写道我必须实现会话跟踪器(https://community.jboss.org/thread/190326)。 这意味着:

a)第一次通话后,我必须将会话ID发送回客户端

b)之后,每次调用时,客户端都必须将session-id发送给服务器。

c)现在服务器可以从会话跟踪器获取会话。

有没有更简单的解决方案?我的意思是,Seam-servlet应该有可能自动检测到来自同一客户端的呼叫。

谢谢!

1 个答案:

答案 0 :(得分:1)

这些请求是来自现代网络浏览器还是某些独立客户端? JSESSIONID cookie是否会在后续请求中重用?

如果你认为cookie 应该,你可以使用HttpServletReqeust.getCookies()来查看服务器是否正在看到它。

http://docs.oracle.com/javaee/6/api/javax/servlet/http/HttpServletRequest.html#getCookies()