2011-12-26 21 views
0

我使用Openjdk 7和JBoss 7.如何在jboss 7中使用url中的session id?

我可以使用cookie的会话很好。有些客户端无法使用cookie,所以我需要通过URL将会话ID传递给服务器。当我尝试这样做时,会话无法初始化(我关闭了Cookie来测试)。我在url中使用了不同的变量来传递session id,如:sessionID,jsessionid,sid,但没有人帮助通过提供的id初始化会话。

所以问题是什么变量应该包含在客户端不能使用cookie的URL中的会话ID,以及如何设置jboss服务器接受来自url的会话ID?

回答

0

您不应该直接修改网址。做这项工作的诀窍是总是在生成URL时使用response.encodeURL()或response.encodeRedirectURL()方法。查看javadoc here

JSTL <c:url>标记在内部使用此方法生成URL。所以使用它是安全的。

如果需要,这些方法会将会话ID附加到URL。请注意,要使它们正常工作,首次创建会话时必须禁用Cookie。如果您在启用Cookie的情况下创建会话,然后禁用Cookie,则不起作用。

+0

谢谢!我所有的tryes都是?jsessionid = as simple变量,这就是为什么我无法初始化会话。 response.encodeURL()以分号给我正确的URL格式。 (; JSESSIONID =) – Novarg 2011-12-26 21:45:54