Thursday, May 17, 2012

Liferay Portal Systems Development - Another Book!

Now that I got introduced to Liferay, its features and how to set it up on WebLogic Server, I wanted to learn more about the strengths of Liferay in detail. So I picked this book for my reading - Liferay Portal Systems Development. You can get an electronic copy of the book here. If you are a beginner to Liferay or you are an initial learner then you should look at my other post - Liferay Beginner's Guide.

This book is for you if you want to get serious about development with Liferay. Once you get to know the portal as user from outside the next step is to get your hands wet and dirty. This is more like opening your automobile's hood. This book explains all about the under-the-hood implementation and customization. You should be Java developer to get more benefits out of this book. But prior Liferay knowledge is not necessary.

This book clearly explains 3 different levels of development and takes you down that path.

  •  Level-I is where you will develop portlets, themes, layouts, hooks etc. At this level you are using Liferay Plugins SDK. 
  • Level-II is for advanced developers which requires you to change config files, write custom Java code, custom JSP files etc. 
  • Level-III is for more advanced developers which involves changing Liferay Portal source code. And this is the level for you if you wish to contribute to the Liferay Portal core development.
 If you want to build custom portlets, MVC portlet bridge and its extension are the gist of portlet development in Liferay. Once you build your portlet using SDK the process of deployment, configuration, using service builder to build services and models for your MVC portlet are all explained by the author in detailed steps with a sample close to realworld project in this book.

The most interesting aspect for me in this book are Hooks. Hooks are hot deployable functionalities that can let you override the portal core functionality. You can perform actions on portal startup, user login, overriding portal services, servlet filter mapping, servlet filters etc. Along with Hooks you will also learn about Ext Plugin which are used to modify the behaviour of internal out-of-the-box portlets that are distributed with Liferay to customized them for your needs. These 2 powerful features provide flexibility and customizing ability for the Liferay Portal.

One of the notorious feature of Liferay portals is the Enterprise and Web Content Management (ECM) which provides the ability to organize, store and render enterprise contents such as images, documents, organizational official business records etc. In my experience most of the organizations have their standard content management systems and would prefer to integrate their portal to existing ECMs like Documentum, Sharepoint, Alfresco etc. Author explains how to create contents, configure and use the them in Portal and integrate Liferay with exsiting ECMs. Along with the content management features the Open Social API, Social Office provides powerful social and collobartion features on top of the portal in Liferay. The books goes detail into the collaborative tools such as Wiki, blogs, message boards, polls, bookmarks etc. Also using the workflow feature of the portal and intergrating it with existing workflow engines like jBPM, Kaleo, Activiti, Intalio etc. is also well explained. Finally you can read about the mobile device detectors and WAP themes which are useful if you want your portal to be accessed by mobile devices.

Another big challange for bigger enterprise implementing any framework is how to set up the portal environment in the lower environment, test it and transition it to the production. This book explains how to setup local staging of portal and contents then publishing it to higher environments. So if you want to understand Liferay as a portal and its strengths in other areas in much more detail then this is the book you want to read. Download a sample chapter from here. Enjoy your reading!!!