PortletPreferences are unique to a user - other users can't see it.
PortletConfig is specific to the Portlet itself. Something stored in PortletConfig can be seen by everyone using the Portlet
PortletContext is global to the war. If you want to make a change that everyone can see, regardless of the portlet they are in, you can make it to the PortletContext. It's global to the war, set in the web.xml file, and very difficult to differentiate from the ServletContext of the
JSP and
Servlet API.
-Cameron McKenzie