Currently PortletDefinitionImpl provides the lookup and caching of its ResourceBundles itself.
But as this is classloader specific and thereby dependent on the PortletApplication instance, the caching of ResourceBundles should not be done on the PortletDefinitionImpl itself but by the PortletFactory which registers and manages the PortletApplication classloaders.
Furthermore, if we want to move to JPA based persistence, PortletDefinition instances are recreated on the fly (even if coming from the cache), so its clearly not a good location to maintain caches of whatever kind.
Finally, the Portlet 2.0 spec added ResourceBundle support on PortletApplication level as well.
The OM has been updated for that, but not yet the persistence (database) model.
The lookup and caching of these ResourceBundles will also be provided by the PortletFactory (which class name now becomes a little outdated ...)