A good design suggestion is to use portlet services and common components.
Portlet Services provide a clear service layer within the portal that is fully defined and accessible by all your portlets though the use of a JNDI look-up.
You can use portlet services to provide common function that is registered to WebSphere Portal and made available to portlets. The portlet service framework is extensible so that vendors and customers can develop additional services. Then, portlet developers have a consistent method for finding and accessing common services.
Good portlet design will take advantage of these defined services and, when necessary, develop and package local common function as a portlet service to be reused throughout the portal.
WebSphere Portal provides several portlet services.
* ContentAccessService enables portlets to access remote systems or to get content from a given URL and return the InputStream.
* CredentialVaultService helps maintain a single sign-on experience for the portal when it becomes necessary to access backend systems that require authentication. Any portlet that needs to access these systems can use CredentialVaultService to retrieve stored user credentials and authenticate on behalf of the portal user.
* PumaHome service is new with Fixpack 1 for WebSphere Portal 5.1 (that is, with WebSphere Portal 18.104.22.168) and provides access to portal user profile information. You can retrieve, update, create, or delete portal user and group information using PumaHome.
* Property Broker enables brokered cooperation for independently-developed portlets. Cooperating portlets exchange information, and portlets can change state as a result of that data exchange. Portlets register their intent to co-operate with a broker, which facilitates the exchanges at runtime. Registration can be done through WSDL files or can be performed programmatically by the portlet. PropertyBrokerService assists with the programmatic registration of brokered properties, and with other functions that can be programmatically controlled, such as activating and deactivating actions.
Filed in: WPS