Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Fixed
-
2.1, 2.2.0
-
None
-
None
Description
The key for the portlet content cache consists off the principals name and the OID of the portlet fragment.
This has some problems:
1.) For the anonymous user (principal name = "guest"), all anonymous users will be served the portlet content from the cache, regardless the session preferences they changed (i.e. language settings).
2.) We do use the ability of jetspeed to inject servlet-request parameters into portlet requests (not according to JSR-168, but pretty usefull). Caching does not take the URL request parameters into account. Changing the request parameters will not be reflected by the porlets content if it's chached.
I would propose to make the cache key generation configurable (via spring). The default jetspeed cache key generation can use the principals name/fragments OID. As an alternative the cache key should be possible to build upon session ID, query parameter and fragments OID. The interface should provide the cache key generator implementations with the appropriate parameters (i.e. request) to obtain the informations it needs.