« Back

Liferay in Action

Company Blogs March 1, 2010 By Richard Sezov Staff

Liferay in Action

Ever since I first started working for Liferay, I had always planned to release two books: the Liferay Portal Administrator's Guide, and the Liferay Portal Developer's Guide. They were designed to be companion books: one (the Administrator's Guide) would help users get started with Liferay by showing how to install, configure, and use Liferay out of the box. The other (the Developer's Guide) would help developers to use Liferay as a platform to build web sites. I was successful in completing three editions of one of these books: the Administrator's Guide. The other one, though, has been a bit more elusive. If you've read the Administrator's Guide, you've probably even seen the Developer's Guide mentioned in the text. And on more than one occasion, I've had to answer the question, "Where is the Developer's Guide?" 

For lots of different reasons, work began on the Developer's Guide, and then it stalled, and then it began again. Part of it is me: I find it a lot easier to write about functionality that the engineers implement than to write my own code and then explain it. Last year, though, I was doing pretty well with it and had hoped to release a "preview" or "rough" version for 5.2. 
But now something really exciting has happened. Liferay has partnered with Manning Publications to release Liferay in Action, the official guide to Liferay Portal development! This is a book for Liferay developers which focuses on creating applications and web sites on the Liferay Portal platform, and it fills the same need (and then some) that the Liferay Developer's Guide would have filled. 
This book covers portal development on Liferay 6. Though it is still a work in progress, you can get it right now, thanks to Manning's Early Access Program (MEAP). I have been working really hard on it for the past few months, with the desire to deliver the best possible product to Liferay developers who have been waiting so long. If you want the book early or if you feel like you want to help, you can get involved with the book right away by taking advantage of the Early Access Program. You then get the chapters as I deliver them, and can give me feedback on what works and what doesn't. If you want to get involved, head over here: 
I just want to thank all of you who have been so patient in waiting for this--we've seen your forum posts and are doing the best we can to help. I'm very thankful for Manning and their early access program which allows us to get material to you faster while it's still being produced. My blog has been rather scarce of late, but now that I can finally annouce this, I hope to keep it up to date as a journal of sorts of my progress. So even if you don't want to get involved in the MEAP right away, hopefully I'll be able to give you a bird's eye view of what's going on. 
Threaded Replies Author Date
Can I point out that this is the height of... Lisa Simpson March 1, 2010 11:43 AM
Actually, as stated above, the book will be... Richard Sezov March 1, 2010 11:50 AM
Hi Rich, Thank you. This is very nice. What's... Jonas Yuan March 1, 2010 12:02 PM
It's slated for release this fall, provided I... Richard Sezov March 1, 2010 2:55 PM
This is an excellent news Rich. Shagul Khajamohideen March 1, 2010 12:56 PM
Excellent. Thanks ! :) Bavithra Rajendran March 1, 2010 9:46 PM
Great news. I hope you will describe all the... Oliver Bayer March 3, 2010 1:55 PM
Nice work! Arcko Duan March 3, 2010 7:51 PM
Keep up the Pace, because we will really need... Corné Aussems March 5, 2010 12:27 AM
Richard, I think the book is great and am... Dave Weitzel August 17, 2010 7:21 AM
Hi Richard - me again. i just tried to copy... Dave Weitzel August 24, 2010 5:28 PM
Great work! Thanks Rich! Jian Cao September 18, 2010 11:49 PM
Got my copy 2 weeks ago. It's been a great help... Danny Francisco October 29, 2010 8:48 PM
There are only three usable Liferay related... Steffen Schuler August 11, 2011 10:16 AM

Can I point out that this is the height of irony since version 6, which will create significant changes, will be released soon? It's awesome that you've written it, but now we're going to send you back to your dungeon to crank out all the updates for 6 emoticon

Someone get me that box of twinkies... We need to keep him well fed so that he'll keep working...
Posted on 3/1/10 11:43 AM.
Actually, as stated above, the book will be based on Liferay 6. :-)
Posted on 3/1/10 11:50 AM in reply to Lisa Simpson.
Hi Rich, Thank you. This is very nice. What's official released date?
Posted on 3/1/10 12:02 PM in reply to Richard Sezov.
This is an excellent news Rich.
Posted on 3/1/10 12:56 PM.
It's slated for release this fall, provided I make my deadlines. :-)
Posted on 3/1/10 2:55 PM in reply to Jonas Yuan.
Excellent. Thanks ! emoticon
Posted on 3/1/10 9:46 PM.
Great news.
I hope you will describe all the "little" things like e.g. how to create an indexer, how to get multi-lingual properties in themes/ jsps/ js, how to use AJAX/ alloy-ui/ jsf...
If only some of these topics are covered this is a long-time needed must-have.
Posted on 3/3/10 1:55 PM.
Posted on 3/3/10 7:51 PM.
Keep up the Pace, because we will really need this new book for 6.0 development. I want the MEAP
Posted on 3/5/10 12:27 AM.
I think the book is great and am trying to use your examples to get initial familiarization with Liferay development. However I cannot get some things to work within the IDE - chapter 10 edit_category.jsp import statements for instance dont resolve properly

Also in that example are you really using Exapndo services to hold the data (in expando-tables or is it being stored in your own table. I am having problems understanding the expando tags in the jsp's to pass new properties (for Calendar events). The service builder created new table for my data not expando so hoping I can pass regular properties across? If not where can I get info on Exapando tags

Do you have a release date for the next chapter(s)?
Posted on 8/17/10 7:21 AM.
Hi Richard - me again.

i just tried to copy the chapter 10 examples to run on 6.0.4 (there is bug in 6.0.5 I want fixed before I move to that).
The service builder builds a completely different set of interfaces so your custom code will never compile.

Have you revisited the code with the newer releases?

I am also puzzled why you use ExpandoAttributes as I can see regular fields using serviceContext.getAttributes(). I cant get Expando to work and again am puzzled about some of the code you have in th e jsp's to try to support it (portlet:namespaces in field names for instance).

Cant wait for the next MEAP release
Posted on 8/24/10 5:28 PM in reply to Dave Weitzel.
Great work! Thanks Rich!
Posted on 9/18/10 11:49 PM.
Got my copy 2 weeks ago. It's been a great help with a project I'm working on.

Great work!
Posted on 10/29/10 8:48 PM.
There are only three usable Liferay related books out there... Liferay in Action, Portlets in Action and the official manual. Thanks!

Will LF in Action cover LF 6.1 as well?
Posted on 8/11/11 10:16 AM.