Skip to main content

Cloud

Exploiting IBM Bluemix with IBM Digital Experience

shutterstock_55456972John Boezeman with IBM talked at the last session of the IBM Digital Experience 2015 Conference about integration patterns using IBM Bluemix. Bluemix is a cloud based development and runtime environment that makes it easy to create and deliver services for the API economy. The services can be consumed by any system, including IBM Digital Expeirence. These services can be a mix of web services or UI generating services. A typical example is a weather service. You can deliver just the data or a complete HTML page.

IBM Digital Experience is a natural partner because it offers a lot of built in features to consume those services.  In his session, John showed several ways that IBM Digital Experience consumed Bluemix services. Bluemix can also consume services provided by Digital Experience and he talked about this too.

The four common ways are:

  • Consume Bluemix service via scripting – this is the simplest way.  Here a Bluemix service, like Watson Translation Service, can be accessed via IBM WCM included in DX and by using the IBM Script Portlet. This encourages a four tier architecture. In this case, Bluemix acts as a backend, headless service.
  • Consume via DDC – this option uses Digital Data Connector for WCM to connect to Bluemix to retrieve data and then use WCM to create the presentation.
  • Consume Bluemix Web Application UI – here you use the Web Application Bridge within IBM Digital Experience.  WAB uses an Iframe and reverse proxy to pull markup from Bluemix and display it on the DX page.  You can rewrite the markup to strip out the applications header and footer so the application looks like it is seamless inside the page.
  • Integrate Bluemix app with DX site – this option uses DX’s Web Application Integrator to inject DX’s header and footer into the Bluemix applications pages. This makes the Bluemix application look like its a DX page by having the same banner, navigation and footer as DX. This same technique can be used for any web application running on any platform as long as you can modify the application.

A challenge in the service consumption model is security and cross-site scripting. CORS is Cross Origin Resource Sharing that is now supported by modern browsers. The Blumix app then defines a whitelist of hostnames that can access your service.  This is the easiest way to allow cross domain resources.

A second way to do cross domain is the DX Ajax Proxy.  The proxy uses a Java application to connect to use SAML or credential vault to pass credentials and responses to your Portlet.

Bluemix can also run portlets on the service and DX can consume those portlets using WSRP.  Look on Developerworks for an article about this.

We talked about consuming Bluemix content, but Bluemix can also consume DX services.  Script portlets are fully addressable via URLs independent of portal.  This means you can call a Script Portlet from an Iframe running in an app on Bluemix.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Mark Polly

Mark Polly is Perficient's Chief Strategist for Customer Experience Platforms. He works to create great customer, partner, and employee experiences. Mark specializes in web content management, portal, search, CRM, marketing automation, customer service, collaboration, social networks, and more.

More from this Author

Follow Us