Perficient Portal Solutions Blog

Subscribe via Email

Subscribe to RSS feed

Archives

avatar

Dan Wellborn

Posts by this author:

avatar

Leveraging Spring MVC with Annotations and JSR 286 Resource Serving to Improve Your Portal User Experience

by on January 6th, 2012

If you are looking for ways to improve your portal user experience via web 2.0 capabilities, you will be happy to know how simple it can be to use the JSR 286 Resource Serving feature with Spring MVC and Annotations to provide these capabilities.  JSR 286 Resource Serving works like a servlet, but runs in the portal context (has the same access to portal session and properties that portlets do) and is used extensively for web 2.0 capabilities like:  Increasing perceived page load time by allowing the portlets to render then asynchronously loading the data within the portlet page, performing asynchronous callbacks in your application for dynamic selection lists, dynamically showing detail data based on user input or selection without a full page refresh, letting the user know that you are processing their request, etc.

There are many steps to set up the needed configuration for Spring (I will outline below), however, once configuration is complete you will only need to annotate your method in the controller and call the resource.  The annotation for a method in your controller that will be called asynchrously will be annotated with the @ResourceMapping annotation and calling the resource by using the tag <portlet:resourceURL></portlet:resourceURL> in your jsp.

This article will provide a sample portlet and outline the key configuration needed to create a simple Spring MVC portlet that leverages JSR 286 Resource Serving via annotations.  It will be important to download and walk through the code with this article as it is very difficult to cover every aspect in a short concise way.  Many times the code is more helpful than words, however, I hope that my descriptions and diagrams will help in adopting Spring MVC.

Additional details on the Spring MVC framework can be found here:  http://static.springsource.org/spring/docs/3.0.x/spring-framework-reference/html/portlet.html

(more…)

avatar

Sample Integration – OBIEE with Portal

by on December 15th, 2011

Before We Begin

Integrating OBIEE and Portal has been tricky due the lack of publicly available OBIEE documentation on the HtmlViewService, therefore, I wanted to write this post to describe the implementation of an OBIEE Chart portlet and provide a sample implementation.   I will cover some of the lessons learned and provide solutions to issues discovered during implementation.

This document only covers the portlet code for displaying an OBIEE report and does not cover the creation of OBIEE reports.

Your implementation may differ depending on your business requirements, however, this article and sample provided should provide a good foundation for your development efforts.

You can download the sample code here.

Prerequisites

This project was built using the following technologies:

  • Java version:  1.6
  • IDE:  Eclipse with Web Tools Platform 3.1.1
  • Portal Server:  Liferay 5.2.3 on Tomcat 6.0
  • Portlet:  Spring (version 3.0.2) MVC JSR 286 using Annotations
  • OBIEE version:  10.1.3.4

NOTE:  In our development environment, the communication to the OBIEE server was via https and the OBIEE server was using a self signed certificate.  Java will not allow communication via web services to a non-trusted source (not a trusted third-party certificate), therefore, we used jssecacerts to create a trust certificate.

Chart Portlet Requirements

Below are the requirements of this sample application:

  1. Allow multiple Chart portlets to be placed on the same page.  Portlets of this type are called “Instanceable” and allowing this capability is configured through the portlet deployment descriptors.   For Liferay, this is defined in liferay-portlet.xml:
    Deployment Descriptor liferay-portlet.xml
  2. Only support IE and Firefox browsers.  This is really an OBIEE restriction because according to official OBIEE documentation, OBIEE does not support all of the browsers that the portal supports.  The following was taken from the “System Requirements and Supported Platforms for Oracle Business Intelligence Suite Enterprise Edition” document published by Oracle:
    OBIEE Supported Browsers
  3. (more…)