Open Source Portal Servers – JBoss Portal & Liferay

June 26, 2005 – 00:05 | java

JSR 168 has been gaining quite a momentum for the past year. Portlet is a very interesting concept to reuse web application modules (at a level higher than JSF), and to aggregate enterprise information in tiers on top of the data storage, which again increases reusability. For a project in planning, I am starting to evaluate several popular open source portal servers, and am reporting the ongoing experience in this blog entry.
All the experiments are done with Tomcat 5.5.9, JDK 1.5.0 on Win XP. Most packages include a HSQLDB, which is used. Otherwise a locally installed MySQL is used as the database.

  • JBoss Portal-2.0: Installation is very easy and smooth – it took me about 10 minutes to install a fresh copy of JBoss AS, unzip the JBoss Portal into the deploy directory, set up a database, starts JBoss AS, voila! I didn’t even have to execute any sql scripts. The application does that the first time it starts. I have always liked this feature seen in most PHP applications.

    Unfortunately with this release there are not a lot of portals bundled. There is a decent admin module (I’ll refer to logical functionalities as “modules” in order to distinguish them from “portlets”, because most functionalities would each consist of multiple portlets). It provides facilities to manage users/roles/permissions, and a CMS system residing in the expanded portal-cmd.sar file. The only other useful module is a forum that emulates phpBB – and does a fairly good job at it. However, while the JBoss Portal itself is under LGPL, the Forum module is under GPL, so you’d pretty much have to start from scratch if you plan to build a non-GPL portal.

    There are still some quirks in window state control that needs to be ironed out. E.g., when I minimize a window, it becomes blank, but remains the same size. Most other products would have fold the window to a title bar, which seems to be more consistent with our desktop experience. Page rendering speed is OK, although page flipping is visible during window state changing. Memory wise, after the server starts up: free memory: 89.50 MB, total memory: 127.18. Even realizing this light footprint might have come from the fact that there is basically just a minimalist portlet container running without lots of portlets deployed, I am still surprised, even more later after having looked at jetspeed2 and liferay, which both only require a servlet container and are supposed to be lighter.

    The last thing worth mentioning is that, not surprisingly, JBoss Portal relies on and only works with JBoss AS. You can tell that on the first look at the distribution package – everything is in a SAR file. This can be a big turn off for applications that only need a servlet container.

  • Liferay Professional 3.2.0: I want to get this out first – Liferay is a cool product. You get out of box a complete portal server, with a rich feature set and fully functional. There is even a “Bible Journal” portlet on the default home page, which only showcases about 10 portlets out of the tons from news aggregation to calendar. You can add any of them at anytime by scrolling to the bottom and picking it from a dropdown list. Each user can manage pages in a personalized way, just like what you can do with My Yahoo or MSN, only more intuitive. Page rendering speed is decent. Minimizing a window only affects the column it resides in and does not cause the whole page to flash and flip, which makes the experience more like on a desktop GUI. It can be a bit of a resource hog – my Tomcat Manager reported “Free memory: 66.73 MB Total memory: 127.06 MB” right after startup. After playing around a while, the free memory took a serious dent and went down to 32.60 MB. Considering all the nice features I have just seen, I think it’s a fair price to pay (I just hope that Liferay scales well). Liferay also impresses me with its thorough support for almost all the popular application servers/servlet containers/databases. It’s not just another one of the after hours hobby projects. Those folks at Liferay LLC are serious about this thing.

    Now, the “but” paragraph. I said “you get out of box a complete portal server” – that is, if you can get it out of the box. Not wanting to download and install the complete package that comes with a preconfigured Tomcat, I went ahead along the “Advanced Setup” trail. It wasn’t just my geeky nature. I wanted to evaluate whether Liferay could be dropped into an existing server just like any other web apps. It can, only after some hours of hair pulling and googling. Long story in short, the setup instructions I found in the documentation are for Tomcat 5.0.x. So I had to work around a few things (one being the data source config) to make it work in Tomcat 5.5.9. Still when I finally got to the point of having started Tomcat and trying to hit http://localhost:8080/, a 404 error page showed up. After more digging in the Liferay forums, I found these folks having the same problem and actually a solution for it. Once that last hurdle was out of the way and the login page showed up, all the rest has been fairly pleasant experience. Nonetheless, if, as the solution suggests, Liferay has to be deployed as the root application, it would be a major pain for whoever would like to provide liferay hosting service. From a more technical perspective, this unnecessary(seems to me at least) deployment constraint would also be a taint in the otherwise clean architecture. [edit:] I have since found out how to deploy Liferay to a non-root context. So this is not a problem any more.

More to come next week…

Trackback from your site, or follow the comments in RSS.
  1. 20 Responses to “Open Source Portal Servers – JBoss Portal & Liferay”

  2. Have you continued such comparison, especially for Liferay?
    I plan to use it. What the items should I consider?

    By kenneth on Jul 20, 2005

  3. I’ve also been playing around with some of these products. Here are my observations:
    http://www.apoorv.info/index.php/2005/07/16/open-source-portals-comparison/

    By wwwbot on Jul 22, 2005

  4. Good entry. I have given a link from my blog http://portlets.blogspot.com.

    By Punit Pandey on Jul 23, 2005

  5. Nice summary. Please, keep them coming.

    By James Ashley on Aug 10, 2005

  6. Hey, I how come you installed JBoss portal so smoothly. I have been trying for last 6 hours and it is thowing snags after snags. It works fine if I try the bundled download, but if I try to configure it with MySQL then giving errors like org.hibernate.HibernateException: Dialect class not found: bucket.dialect.MySQLDialect; although i have specified the dialect in cfg file. Have I made any mistakes??

    By Sikhar on Aug 19, 2005

  7. first, i choosed Liferay 3.2.0, and then i went forward JBoss Portal 2.0, but at last i returned to Liferay 3.6.1 based on JBoss Application Server for my website: Biible.net

    By Biible.net on Oct 17, 2005

  8. The most important thing thst i found as a developer to be lacking in the jboss portal is the lack of proper documentation regarding the portal framework and how the developers can leverage the portal to host custom created professional portlets. I created one custom portal that contains one page and two portlets(from sample applications) out of which one is spring portlet. But it doesn’t look great and also now i don’t know how to proceed further to convert my spring application that is quite large to portlets running under jboss portal

    By Vikas Dhaker on Dec 29, 2005

  9. I have been searching for Open Source / Commercial Open Source ready-portlets for JBoss but could not find more than a few companies or projects – just a handful of them. Here they are… can someone add to this list?

    (Did I paste this in the wrong place?)

    JBoss Collaboration Portlets: http://labs.jboss.com/portal/index.html?ctrl:id=page.default.downloads&project=portletswap&category=.portlets.collaborate
    This link contains open source portlets for:
    * Wiki
    * Forums (This is a port of phpBB and has good reviews)
    * Image Gallery
    * Address Book

    JBoss Miscellaneous Portlets: http://labs.jboss.com/portal/index.html?ctrl:id=page.default.downloads&project=portletswap&category=.portlets.miscellaneous
    This link contains open source portlets for things like:
    * Weather
    * News
    * Flash Movie
    * IFrame
    * Calculator

    Notepad portlet from the University of Wisconsin: https://mywebspace.wisc.edu/groups/portal/public/dist/

    COGIX: http://cogix.com/vf2/Features.shtml
    This link contains commercial portlet for:
    * Conducting Surveys
    (There is no mention of JSR-168 compliance but they have mentioned Tomcat as one of the Application Server that is supported. This is one of the best Survey portlet I could find.)

    XWiki: http://freshmeat.net/projects/xwiki/

    Bookmarks Portlet: https://sourceforge.net/projects/bookmarks-mgr/
    (This is in pre-Alpha stage)

    Another Bookmarks Portlet: http://sourceforge.net/projects/bmarks-portlet
    (This is in Alpha stage)

    Commercial Open Source portlet suite for Weblogic:
    http://www.componence.com/renderer.do/menuId/52091/clearState/true/sf/52093/returnPage/52093/itemId/15306/realItemId/15306/pageId/52025/instanceId/52111/
    http://www.componence.com/renderer.do/menuId/52091/sf/52025/returnPage/52025/itemId/15304/realItemId/15304/pageId/52025/instanceId/52111/
    (contains 40 excellent portlets – JSR-168 and JSR-170 compliant.)

    SyncEx suite of collaboration portlets: http://www.syncex.com
    SyncEx Collaboration Suite For Microsoft Exchange consists of four portlets(Mail,Calendar,Task and Contact) which help in improving the employees, customers and vendor’s productivity and hasten the adoption of portals in an enterprise. These portlets are full-featured MS Exchange client making it easy to access groupware functionality through better communication and information sharing. Being a web-based client it can be accessed from anywhere that makes corporate e-mails, calendar, tasks and contacts globally accessible.

    GEMS portlet collection: https://gems.dev.java.net/
    E-Mail Portlet
    1. Calendar Portlet
    2. Blog Portlet
    3. RSS Feed Portlet
    4. Calculator Portlet
    5. Image Viewer Portlet
    6. Horoscope Portlet, etc.

    Open Reports: http://www.oreports.com/
    (OpenReports is a flexible Web reporting solution that allows users to generate dynamic reports in a Web browser. OpenReports uses JasperReports, an excellent, full-featured reporting engine, and was developed using components including WebWork, Velocity, Quartz, and Hibernate.)

    Portlet bridge: http://portletbridge.org/
    (The Portlet Bridge Portlet is a web clipping proxy portlet that allows web application be hosted as portlets. See the PortletBridge Portlet project for more information. The portlet bridge portlet makes downstream HTTP calls and uses CyberNeko and XSLT to do the web clipping. There are some really nice screenshots on their website.)

    xmlportlet: https://xmlportlet.dev.java.net/
    (The goal of xmlportlet is to provide a base portlet to serve as a simple mechanism for transforming XML data into the view for your portlet application. This base portlet will be JSR-168 compliant, and will relieve you from developing the basic boilerplate logic needed to transform XML using XSLT into HTML.)

    SOAP portlet: http://sourceforge.net/projects/soap-portlet
    (This project consists in a java JRS-168 portlet that acts as a generic client for SOAP services. The user interface for calling the service is dynamicaly created using a WSDL description.)

    Portlets from Liferay and eXo (need slight changes)

    By Chintan Zaveri on Apr 21, 2006

  10. Hi Jing:

    Currently we are running Liferay 3.1.0. Please point me to the instructions for deploying Liferay 3.1.0 to a non-root context.

    We have changed Liferay 3.1.0 and will not have the resource to upgrade to a more recent version of Liferay 3.1.0 for a while.

    Your help will be greatly appreciated.

    Regards,
    John

    By John Kam on Apr 26, 2006

  11. John, other than the link in the blog, this here might be helpful to you as well:
    http://forums.liferay.com/index.php?showtopic=1408
    I remember the steps I took involved changing the files mentioned in that thread, and also redeploying liferay in the tomcat manager under a different context path. The problem here is that I was messing with so many things in that installation that finally when I got it to work, I couldn’t even decide what exactly I did to make it work. :) You know how these server configuring things go…
    –Jing

    By Jing Xue on Apr 27, 2006

  12. Thanks for your efforts on the comparisons Jing.

    cheers,
    Julian.

    By Julian on Jul 24, 2006

  13. Hi, I was just wondering if you have stepped down the road of setting up liferay on JBoss in a non-root context again since version 3.x

    I am trying to setup Liferay 4.0.0 on a Solaris 10 server with JBoss 4.0.4GA and it won’t work for me. anyway if you had doc’s for the way you had to setup last time that might help me a little.

    Regards

    Simon

    By simon m on Oct 8, 2006

  14. Simon,

    I have not had chance to work with liferay since 3.x. I will probably pick up 4.0 and give it a try very soon though.

    Thanks and sorry for can’t be more helpful.
    –Jing

    By Jing Xue on Oct 9, 2006

  15. We are running Liferay enterprise 4.2.1 on jboss with tomcat on mysql for more than 3 months now. Its exteremely stable, a bit slow but acceptable.

    More & more portlets available for liferay deployments as well. We’ve seen some new office-based implementations on liferay platform, such as officegateway.ca – extended with CRM and invoicing for small companies, also myoffice24×7.com it has RFID and ERMS implementations.

    Regards
    -Vic

    By Vic on May 3, 2007

  16. How did you manage to deploy Liferay to a non-root context? We are struggling to do the same.

    By Naresh on May 8, 2007

  17. Hello! Help solve the problem.
    Very often try to enter the forum, but says that the password is not correct.
    Regrettably use of remembering. Give like to be?
    Thank you!

    By AltaGid on Aug 8, 2007

  18. If anyone is still having issues installing Liferay check out their wiki here:
    http://wiki.liferay.com/index.php/Category:Installation

    By jr on Nov 21, 2007

  19. Can you tell me how to configure liferay under different context (not under root).
    I am using liferay 4.4.2 and jboss AS 4.0.5. thanks

    By James on Jun 2, 2008

  20. A demo example of Survey Portlet for Liferay has been made available at Portlet MarketPlace, demo link is http://portlets.myoffice24×7.com/web/guest/marketplace/public-demo

    By vic on May 5, 2010

  1. 1 Trackback(s)

  2. Jul 24, 2006: Julian On Software » The Path to Zen » Blog Archive » Open Source Portal Servers - JBoss Portal

Post a Comment