WebSphere Portal Server and Web Services
Figure 10: A portlet using a web service
To simplify writing portlets using web services, IBM provides a service proxy generator tool that automatically produces client code from a WSDL interface document, and optionally a service implementation document. If only a service interface document is used, the service proxy generator tool generates a generic service proxy which can be used to access any implementation of the given service interface. If both a service interface and a service implementation are used, the service proxy generator tool generates a service proxy that will only access the specified service implementation. The service proxy contains code that is specific to a binding within the service interface. For example, if the binding is a SOAP binding, then the service proxy will contain SOAP client code that is used to invoke the service.
Remote Portlet Web Services – Near Future
In order to allow for dynamic integration of portlets in portals without installing a portlet archive file with the entire portlet code locally, portlets themselves have to be provided as web services. This requires a Remote Portlet Web Service Interface description in WSDL.
The WSDL description defines a common set of methods for all remote portlets and the required parameters as well as the return values, corresponding to the Portlet API. This means that remote portlet services do not have to be implemented in Java, they could as well be implemented in other languages.
Web service providers who want to publish remote portlet web services must publish appropriate entries to a UDDI directory, referencing the Remote Portlet Web Services Interface WSDL description.
Once a remote portlet has been published, portal administrators can use their portal adminstration tools to search the UDDI directory for web services that implement the Remote Portlet Web Services Interface and pre-select some of the matching portlet web services for use in their portal by adding them to the portal’s portlet registry (see Figure 11).
Once the portlets are in the registry, users can select them to be displayed on their personal pages. Alternatively, portals may be set up in a way that allows portal users themselves to browse the directory for portlet web services and add references to remote portlets to their personal pages.