I have this Flex client application I'm trying to implement
the Logout function for. This client has both HTTP and RTMP
connections to the server. So when the user presses the Logout
button in client, I'm trying to invalidate both HTTP and RTMP
sessions on the FDS so the FlexClient would get invalidated.
The behavior on the client is the Login screen pops up so the user can login again if they want. The problem is, if they do so, the following happens on the FDS side:
- connecting via the HTTP channel will result in FlexContext.getFlexClient() call returning a new FlexClient object (that is correct), with the newly created Http flex session
- aftarwards, trying to connect via the RTMP channel, will result in FlexContext.getFlexClient() call returning the old FlexClient object (that is, the one used on the previous session, before the user pressed the Logout), wich is in an invalid state and has no sessions associated. Everything would fail using this FlexClient. More over, here FlexContext.getFlexSession() returns the new RTMPFlexSession object (which is correct), but this session has no FlexClient objects associated (the getFlexClients() call returns an empty list)!
My question is why would FDS do that?? Why is FlexContext.getFlexClient() returning an old, invalidated FlexClient object? It looks odd to me. I'm using LiveCycle Data Services ES 2.5.1 on the backend, deployed on Tomcat 5.5
Thanks.
Robert
The behavior on the client is the Login screen pops up so the user can login again if they want. The problem is, if they do so, the following happens on the FDS side:
- connecting via the HTTP channel will result in FlexContext.getFlexClient() call returning a new FlexClient object (that is correct), with the newly created Http flex session
- aftarwards, trying to connect via the RTMP channel, will result in FlexContext.getFlexClient() call returning the old FlexClient object (that is, the one used on the previous session, before the user pressed the Logout), wich is in an invalid state and has no sessions associated. Everything would fail using this FlexClient. More over, here FlexContext.getFlexSession() returns the new RTMPFlexSession object (which is correct), but this session has no FlexClient objects associated (the getFlexClients() call returns an empty list)!
My question is why would FDS do that?? Why is FlexContext.getFlexClient() returning an old, invalidated FlexClient object? It looks odd to me. I'm using LiveCycle Data Services ES 2.5.1 on the backend, deployed on Tomcat 5.5
Thanks.
Robert