*/
public void logout(CopletInstanceData coplet) {
super.logout(coplet);
PortletKey portletKey = (PortletKey)coplet.getTemporaryAttribute(ATTRIBUTE_NAME_PORTLET_KEY);
User user = (User)coplet.getTemporaryAttribute(ATTRIBUTE_NAME_USER);
final String portletInstanceKey = (String)coplet.getTemporaryAttribute(ATTRIBUTE_NAME_PORTLET_INSTANCE_KEY);
Producer producer = consumerEnvironment.getProducerRegistry().getProducer(portletKey.getProducerId());
// releaseSession()
try {
UserSession userSession = consumerEnvironment.getSessionHandler().getUserSession(portletKey.getProducerId(), user.getUserID());
PortletDescription portletDescription = producer.getPortletDescription(portletKey.getPortletHandle());
GroupSession groupSession = userSession.getGroupSession(portletDescription.getGroupID());
PortletSession portletSession = groupSession.getPortletSession(portletInstanceKey);
SessionContext sessionContext = portletSession.getSessionContext();
WSRPPortlet wsrpportlet = consumerEnvironment.getPortletRegistry().getPortlet(portletKey);
PortletDriver portletDriver = consumerEnvironment.getPortletDriverRegistry().getPortletDriver(wsrpportlet);
if (sessionContext != null) {
String[] sessions = new String[1];
sessions[0] = new String (sessionContext.getSessionID());
portletDriver.releaseSessions(sessions, user.getUserID());
}
userSession.removeGroupSession(portletDescription.getGroupID());
} catch (WSRPException e) {
this.getLogger().error("session deregister()", e);