WSRP the Ideal and the Actual

Web Services for Remote Portlets (WSRP) is a very useful spec. It defines standards to provide “presentation oriented web services” that can be used to aggregate web sites. It is a much richer way of providing site mashups. WSRP not only allows mashing up at the HTML level but also concerns itself with passing application state and security contexts between the aggregators and source websites (Portlet Consumers and Portet Producers respectively). Most Portal Platforms now days provide an implementation of WSRP which is now at version 2.0 .

I’ve recently tried to use this feature in JBoss Portal Server and Websphere Portal with mixed results. My main issue is that the URL handling (e.g. image and css urls) in the portlet HTML is not yet compliant to the spec. All relative URLs that are encountered in the HTML are re-written by the Portlet Consumer to point directly to the Portlet Producer. This implies that the Producers are available on the web making it very difficult to use producers that are shielded behind a firewall. If you don’t have this restriction or know of an implementation that handles resource URLs via the consumer then the technology is well worth the considerations.