Sunday, August 22, 2010

Trying out Liferay 6 CE

As part of some work I'm doing I've been working with Joomla for a corporate web-site and it works great, but I wanted to see what other Content Management Systems had to offer and so decided to give Liferay a spin.

Liferay is launching version 6 Enterprise Edition in September, but thanks to being in open-source the Community Edition is available now.  I grabbed the Tomcat bundle of version 6.0.5 CE and got started.

Making bundles available (there are bundles for other containers including GlassFish, JBoss, Jetty, etc.) makes installation a snap.  Just download, unzip and run the startup script.  On my laptop, after a bit over a minute I had a running Liferay installation.

Thanks to a few pointers and instructions from Paul Hinz, I was off and running configuring Liferay and creating some pages.  Since I was primarily interested in creating a web-site, after trying some basics, I went to the Web Content Management section to give its capabilities a spin.

This is not intended to be a comparison with Joomla, but right away there was a different paradigm.  Rather than navigate an administrative interface to create pages, content, and lay things out, with Liferay one simply logs in, navigates the site, and a few extra controls are available to do all the edits you need.  This is probably a personal preference item but I like the Liferay approach better.

For now, I'm simply using the default Liferay theme, although I decided I didn't like the breadcrumbs it had so went in and hacked that out of the template.  I'll have to take a look at create templates properly in the future.

Liferay is a portal, not just a CMS, so there are a host of portlets and components you can add to your pages.  But even for just building a web-site the default theme has nice pull down menus, a configurable navigation portlet, and a simple and convenient way to add new pages and content.  Want to add a page?  Click a button to manage the page, click the Children tab, enter a name for the new page, and that's it.

Adding content to a page is just as easy.  Open the Add pull down menu, pick the component to add and position it on the page.  When creating a web-site, you'll usually be adding the Web Content Display component.  Once added, you can either link to and edit existing content to display, or create new content in a nice editor.

But even when creating "just" a web-site, you can add other components like wikis and blogs, although my installation gave me errors when trying to post new content to either.  I'll have to visit the forums to see if it is a known issue.

As far as resources, being a Java EE app Liferay is somewhat hungry.  Running on Linux, with the use above creating a web-site the Java process is using about 400 MB of RAM.  It also isn't terribly speedy starting up, but that may be more of a Tomcat issue.  On my old slow Linux server (dual 450 MHz Pentium), it takes a whopping 6 minutes to start.  But on a dual core MacBook Pro it takes about 80 seconds.

To compare performance and memory, I did grab the GlassFish bundle and start it up, but ran into a few issues.  First, the bundle didn't have the right permissions on some scripts and then once started, Liferay doesn't appear to be installed or working as all I get is a GlassFish "your server is running" page.  I'd pursue it more but am fine with using Tomcat.

Stay tuned, I'll share more and perhaps will have a live site to point you to soon.

5 comments:

  1. Thanks for the post. For performance we have two session broadcast on Liferay LIVE that are now available here:
    http://www.liferay.com/web-events

    I'll discuss the GlassFish issues with Engineering - we love GlassFish, Weblogic, Websphere, JBOSS, etc.

    ReplyDelete
  2. Hi Kevin,

    Thanks for checking out Liferay.

    Part of the delay that you may have experience initially on startup may be due to the fact that Tomcat is first compiling the JSPs.

    Best,
    --
    Brian Kim

    ReplyDelete
  3. @brian, good point. Would you then expect subsequent startups to be quicker?

    ReplyDelete
  4. @Kevin

    sure on first startup liferay will create its db, various tables indexes etc, precompiling jsp is just one initial startup.
    Also if you run the bundle there additional startup actions: creation of extra users, content, etc.

    kind regards

    armin

    ReplyDelete
  5. Kevin, the tests we built for CE were with: 6.0.4 and Glassfish 3.0.1. There are more combinations tested for EE. Let me know your combination so we can add that to our Hudson test bed - see: http://bit.ly/d9QfS9

    ReplyDelete