since RHQ-1544 pushes the preferences cache down into the server/jar layer, we can't rely on the http session automatically purging things for us. instead, we have to listen for session timeout events as well as explicitly logout events from web users and purge the cache manually in those two instances.
rev3037 - explicitly purge the user's preferences cache upon session timeout or logout action;
to verify, add this entry to your jboss-log4j.xml file for the server: <category name="org.rhq.enterprise.server.auth.prefs.SubjectPreferencesCache"> <priority value="TRACE"/> </category> in the same file, change the ConsoleAppender threshold to TRACE: <param name="Threshold" value="TRACE"/> in the web.xml change the timeout to 1 minute: <session-config> <session-timeout>1</session-timeout> </session-config> log into the application, log out of the application, verify you see the following message: Removing PreferencesCache For {subjectId} log into the application, wait 1 minute for session timeout, verify you see the message: Removing PreferencesCache For {subjectId}
Testing notes: "Removing PreferencesCache For {subjectId} " references to appear in server log. QA Verified. After making changes, PreferencesCache message appears in server log for both of these scenarios.
This bug was previously known as http://jira.rhq-project.org/browse/RHQ-1558