Update ConversationState when user's Membership changed

When user logged in portal in ConversationRegistry added ConversationSate for this user. ConversationState keeps user's Identity that is actual for logged in time. In this case even user's Membership updated in OrganizationService ConversationState still keeps old (not actual Identity). User must logged out and loggin in again to update Identity. To fix this issue need add special listener in configuration of OrganizationServicer. This listener is extended MembershipEventListener.

Example of configuration.

<?xml version="1.0" encoding="ISO-8859-1"?>
<configuration
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://www.exoplaform.org/xml/ns/kernel_1_0.xsd http://www.exoplaform.org/xml/ns/kernel_1_0.xsd"
   xmlns="http://www.exoplaform.org/xml/ns/kernel_1_0.xsd">
  <external-component-plugins>
    <target-component>org.exoplatform.services.organization.OrganizationService</target-component>
.....
.....
    <component-plugin>
      <name>MembershipUpdateListener</name>
      <set-method>addListenerPlugin</set-method>
      <type>org.exoplatform.services.organization.impl.MembershipUpdateListener</type>
    </component-plugin>

   <external-component-plugins>
</configuration>
Tags:
Created by Andrey Parfonov on 10/15/2009
Last modified by Andrey Parfonov on 10/15/2009

Products

generated on Thu Sep 02 15:43:42 UTC 2010

eXo Optional Modules

eXo Core Foundations


Copyright (c) 2000-2010. All Rights Reserved - eXo platform SAS
2.4.30451