Enhancing your portal using Google Gadgets with WebSphere Portal V6.0
Use Google Gadgets in your portal-based business mashups
WebSphere Portal V6.0 provides users with personalized and customizable access to information, business processes, and applications. Through WebSphere Portal's composite application technology, users can create business mashups consisting of one or more pages of aggregated portlets which can interact with each other in a contextual fashion. You can integrate into composite applications local portlets that are implemented to the Java Portlet API (JSR 168) specification as well as remote portlets that are invoked as Web Services for Remote Portlets according to the OASIS WSRP standard.
Now, with the introduction of the IBM Portlet for Google Gadgets, you can also integrate Google Gadgets into your portal-based business mashups. All application function and user interfaces of Google Gadgets are provided by gadget services run and operated by Google or third parties. WebSphere Portal acts as an intermediary, providing customizable, personalized, and managed access of users to portal pages and enterprise mashups, which can include Google Gadgets and many other components. In that capacity, WebSphere Portal stores and manages all customization information for the integrated gadgets. For example, if a user employs a "maps" gadget, then its customization (such as the address to show in the map, the rendering style for the map, and so on) is stored and managed in the portal database.
This article briefly explains the key concepts behind gadgets. Next, it provides an overview of how the integration of Google Gadgets into WebSphere Portal works from a user point of view and from an architectural perspective. Then, it describes the benefits this capability provides to portal customers.
Understanding the gadget concept
The term gadget is used often and in many contexts. In this article, gadget refers to a remotely accessible, URL-addressable service that provides access to an application which is designed to be aggregated into the context of a Web page.
Gadgets typically have a view mode, which presents the application function, and a customize mode, which lets users modify gadget settings to customize the gadget based on their personal preferences. For example, consider a maps gadget which, in the view mode, displays a map based on its current settings of address and view preferences; in the customize mode it lets the user set the address, the zoom level, the map rendering options, and so on.
This should sound quite familiar to people who have a background in portlets. Conceptually, gadgets, as described above, are portlets; what is special is that they are exposed as URL-addressable, remotely-accessible REST-style services.
Integrating Google Gadgets with WebSphere Portal
The fact that gadgets conceptually are portlets enables a seamless, straightforward, and user-friendly integration of Google Gadgets into portals. Let's look at how integrating Google Gadgets into WebSphere Portal behaves from both the end user and the administrator's point of view.
End user perspective
To the end user, a Google Gadget in a portal is just like any other portlet:
- To add a Google Gadget to a page, users can simply drag-and-drop it from the portlet palette to the page.
- A portal page showing an integrated Google Gadget displays the view mode of the gadget inline, aggregated in the page. For example, using a maps gadget, the map displays the queried location.
Figure 1. The view mode of the IBM Portlet for Google Gadgets
Like for any other portlet, the portal displays an icon to activate the personalize mode. When the user clicks the icon to enter the personalize mode for an integrated Google Gadget, the portal displays the personalize mode of the gadget inline so that it appears like the personalize mode of any other portlet. Therefore, the user can conveniently modify the gadget's settings directly from within the portal user interface. Figure 2 shows a personalize mode window for the Google Map Gadget.
Figure 2. The personalize mode of the IBM Portlet for Google Gadgets for the Google Map Gadget
Depending on the administrative settings (see Administrator perspective), your users can click the link shown in Figure 2, and select a different gadget to displayed; for example, they could switch from displaying a maps gadget to displaying a weather gadget. Selecting gadgets is very simple; you use the Google Gadget selection screen which displays information from the Google Gadget catalog inline within WebSphere Portal's user interface, as shown below in Figure 3.
Figure 3. The personalize mode of the IBM Portlet for Google Gadgets showing the Google Gadget selection
So, for end users who are familiar with using portlets in a portal, using gadgets in WebSphere Portal is the same as using any other portlet
Administrator can set the degree of flexibility the end users have when using gadgets in portals. Administrators can provide a lot of flexibility to end users by setting access rights to permit end users to create new IBM Portlet for Google Gadgets configurations and to select which gadget they want to incorporate into their portal view.
Alternatively, administrators can pre-define a fixed set of IBM Portlet for Google Gadgets configurations and make them available to users on the portlet palette, so that users can only select from the pre-selected gadgets. Administrators can also choose different levels of flexibility for different user groups, effectively controlling which users can use which gadgets. Figures 4 and 5 depict the configure mode and selection options available to the administrator.
Figure 4. The configuration mode of the IBM Portlet for Google Gadgets
Figure 5. The configuration mode of the IBM Portlet for Google Gadgets
Who does what?
Using Google Gadgets with your portal involves contributions from several parties:
- Google provides the Google Gadgets Syndication Services including the catalog that lists available gadgets and enables posting of new gadgets as well as a subset of the available gadgets.
- Third parties provide a large number of gadget services that are available in addition to the gadgets developed by Google.
- IBM provides the IBM WebSphere Portal 6.0 product and the IBM Portlet for Google Gadgets to its portal customers.
- Portal customers acquire and run WebSphere Portal and the IBM Portlet for Google Gadgets. They use this portlet to integrate gadget services provided by Google and/or third parties into their WebSphere Portal-based portal sites. They can also create their own gadgets to include in their portal using the IBM Portlet for Google Gadgets.
As the provider of the WebSphere Portal 6.0 product and the IBM Portlet for Google Gadgets, IBM enables customers to easily find and integrate gadgets through the portal user interface. The responsibility for the integrated services and their stability and availability relies with Google for the services provided by Google and with the respective third parties for gadgets published to the gadget catalog by those third parties.
Understanding the architecture
The IBM Portlet for Google Gadgets is a Java Portlet implemented according to the Java Portlet API standard (JSR 168). This portlet acts as a proxy for gadgets on the portal side. The configuration mode of the IBM Portlet for Google Gadgets can consume the RSS feeds that Google publishes. Because the gadget catalog RSS feeds provided by Google are not consumed through gadgets, the IBM Portlet consumes them directly. It also displays a user-friendly selection of gadgets so that user's can pick gadgets to incorporate into the portal view.
The selected gadget is stored in the portlet's configuration. The customize mode of the portlet retrieves the customize mode view from the gadget to which the portlet is bound and renders it inline as the customize mode view of the portlet. The customizations are stored in the portlet preferences in the portal database. The view mode of the portlet retrieves the view mode of the gadget, and displays it inline.
Figure 6. Architecture of the IBM Portlet for Google Gadgets
The IBM Portlet for Google Gadgets has been implemented by IBM in close collaboration with Google, which provides the gadgets through its Google Gadget Syndication Service.
To implement the IBM Portlet for Google Gadgets, we relied on the standard Java Portlet API as defined in JSR 168. Therefore, just as we implemented integration of Google Gadgets in WebSphere Portal, you could implement your own portlet that would integrate other gadget-like services into WebSphere Portal.
Why use it?
You can use Google Gadgets with WebSphere Portal to greatly simplify integrating many new applications and content from the Internet into your business environment. You can use any of the thousands of gadgets available on Google's gadget catalog with WebSphere Portal 6.0 using the IBM Portlet for Google Gadgets. And you can display any of these gadgets in the context of portal pages and business-oriented mashups assembled in WebSphere Portal--for example, by adding related maps, news, stock quotes, and so on through Google Gadgets.
Through the IBM Portlet for Google Gadgets, WebSphere Portal 6.0 enables customers to easily integrate Google Gadgets into business portals. These Web services provide valuable information to end users within the context of portal pages and business mashups, along with local portlets and WSRP services. Just as we implemented the IBM Portlet for Google Gadgets as a standard portlet leveraging WebSphere Portal's standards-based and open architecture, third parties could implement similar portlets to integrate other gadget-like services into WebSphere Portal as well.
- Download the IBM Portlet for Google Gadgets from the WebSphere Portal catalog.
- Download a trial copy of WebSphere Portal Express V6.
- Announcement: IBM WebSphere Portal Is First to Make Google Gadgets Available to Millions of Corporate Portal Users
- Building Google Gadgets
- developerWorks WebSphere Portal zone
- Google Gadgets for your Web Site
- Java Portlet API Specification (JSR 168)
- Mashups: The new breed of Web app
- WebSphere Portal product documentation