I implemented a very simple script to call a logout action:

  |         <!-- 10 minutes timeout -->
  |     <script type="text/javascript" language="JavaScript"><!--
  |             setTimeout('Redirect()', 600000);
  |             function Redirect() {
  |                     document.getElementById('tor_form:tor_button').click();
  |             }
  |     // --></script>
  | 
  | [...]
  | 
  |             <h:form id="tor_form">
  |                     <t:commandButton id="tor_button" style="display:none;" 
value="redirect" action="#{logout.logout}"/>
  |             </h:form>
  | 
  | 

The logout action invalidates the session and redirects to the login page:


  |      // Before invalidating the whole session check if other conversations
  |      // are running
  |      if(!ConversationsAgent.getInstance().activeConversationsExist()) {
  |              Seam.invalidateSession();
  |              return "login";
  |      }
  |      
  |      // Otherwise leave session open and just redirect to home
  |      else {
  |              ConversationsAgent.getInstance().end();
  |              FacesMessages.instance().add("No activity timeout occurred.");
  |              return "home";
  |      }
  | 

I added the if/else conditions because if I invalidate the session all active 
conversations (in other tabs) will be destroyed and this is not what I want. I 
implemented the activeConversationsExist() as it follows:


  |     public boolean activeConversationsExist() {
  |      for (ConversationEntry entry : 
ConversationEntries.instance().getConversationEntries()) {
  |              if(!entry.isEnded())
  |                      return true;
  |      }
  |      return false;
  |     }
  | 

which is not good because it checks the whole conversation stack (including 
other connected clients or browsers) and not the ones related to the session I 
want to invalidate.

So, my question is: is there a way to check if only the session-related 
conversations are ended?

Thanx, cheers!

View the original post : 
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4069064#4069064

Reply to the post : 
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4069064
_______________________________________________
jboss-user mailing list
jboss-user@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/jboss-user

Reply via email to