The talk that Benjamin gave at the local Java SIG this week was so well-received, we decided to host an encore version as a webinar on 22 April, at 9am PT / 12pm ET / 5pm GMT. Benjamin will demonstrate how the eXo Platform can be used as an online Java development platform to create public and private clouds. He will walk through the different technologies that eXo leverages, such as the GateIn open source portal framework, JAX-RS, Groovy and OpenSocial Gadgets. Specifically, attendees will learn how to:
use a JCR data store to model a cloud tenant
store and dynamically deploy JAX-RS services written in Groovy
store and dynamically deploy OpenSocial Gadgets that connect to previously online-created REST APIs
remotely expose those Gadgets to the public cloud
The complete abstract and other details are available on the registration page.
Prabhat Jha, one of the JBoss developers collaborating with the eXo team to build GateIn, shows how to add a tic-tac-toe gadget to GateIn on his blog today. Here’s how he describes it:
If you thought Portal was only about serious stuffs such as content aggregation, integration of different applications, out of box personalization and natural front end to SOA etc then think again. Using GateIn’s gadgets, you already could import different cool gadgets say from Google to your dashboard and page. Now you can tic-tac-toe as well. Here is a screen shot from GateIn Portal for you i-dont-believe-until-i-see kinds.
Last week, I participated in a panel discussion on using OpenSocial in the enterprise, along with execs from IBM, Atlassian, and SocialText. Although only two of the companies represented had portal offerings, a good portion of the discussion was focused on portals, namely is OpenSocial destroying the portal world and portlets in general.
Emphatically, no.
First, portals are evolving. I reflected in a previous post that “The nature of portals has changed, and with GateIn (eXo + JBoss), we’re seeing portal’s transformation from an aggregator of external applications to a platform for building and delivering services that add value to the user organisation.”
In this world, the question is not whether a developer has to choose between portlets or gadgets but rather, which services are best delivered as gadgets and which as portlets.
At eXo, we do not make a great distinction between a gadget or a portlet. They are merely categorized in a way that makes it easy for users to go and grab more gadgets or portlets to customize their application. The user doesn’t care.
From the developer side, we use portlets for more robust components that take longer to build while gadgets are lighter and take less time to build. The difference comes from the technical aspect behind the scene. Even if we see some similarities in the last specifications, originally portlets were more Java server side components that generate fragments of HTML code while gadgets dynamically generate that HTML on the client side thanks to JavaScript and REST server calls. The main difference is then in the application lifecycle as portlets have to be deployed as WAR packages on the application server while the gadget is just an XML file that can be dynamically added and edited online. Gadgets allows our business users to build applications on the cloud very quickly.
Next generation portals will support both models but this is just one of the building blocks of the platform of tomorrow. Horizontal services like content, mail, calendaring, or profiles are other pieces that can be mashed up together to easily build a custom web application… online. We’re baking functionality into GateIn that will enable it to be the ultimate “mash up” platform for combining and recombining components. Times have changed, let’s be more agile.