什么是HttpSession中的__flexSession属性

时间:2018-02-28 06:15:09

标签: java servlets flex wildfly httpsession

我想知道httpsession中的__flexSession属性是什么。在应用程序前面工作是flex,wildfly10是应用程序服务器,后端是java。 HttpSession有一个名为__flexSession的属性,它有HttpFlexSession对象。它似乎是HttpSession的克隆。每当我使HttpFlexSession无效时HttpSession失效后我得到了这个异常。 java.lang.IllegalStateException:WFLYCLWEBUT0001:会话KvLvpquLBKMYJ_APyZ6jzxhenh3cRIjoZtHkdAf3在org.wildfly.clustering.web.undertow.session.DistributableSession.validate(DistributableSession.java:55)中无效 在org.wildfly.clustering.web.undertow.session.DistributableSession.getAttribute(DistributableSession.java:142) at io.undertow.servlet.spec.HttpSessionImpl.getAttribute(HttpSessionImpl.java:122) 在com.os.sp.web.servlet.SessionInvalidateServlet.doPost(SessionInvalidateServlet.java:58) 在javax.servlet.http.HttpServlet.service(HttpServlet.java:707)

1 个答案:

答案 0 :(得分:0)

此问题已解决 “__flexSession”是自动创建的属性,它包含一个会话,该会话是主会话(父会话)的副本。 如果您将使会话无效,它将自动使会话包含“__flexSession”属性。 如果您通过“__flexSession”属性使会话无效,它也将使其父级无效。 这只是一个理论,但问题是如何确保两个会话都失效。 因此,为了克服这种疑问,解决方案首先将两个会话彼此隔离,而不是逐个使其无效