Matt RaibleMatt Raible is a Java Champion and Developer Advocate at Okta.

The Angular Mini-Book The Angular Mini-Book is a guide to getting started with Angular. You'll learn how to develop a bare-bones application, test it, and deploy it. Then you'll move on to adding Bootstrap, Angular Material, continuous integration, and authentication.

Spring Boot is a popular framework for building REST APIs. You'll learn how to integrate Angular with Spring Boot and use security best practices like HTTPS and a content security policy.

For book updates, follow @angular_book on Twitter.

The JHipster Mini-Book The JHipster Mini-Book is a guide to getting started with hip technologies today: Angular, Bootstrap, and Spring Boot. All of these frameworks are wrapped up in an easy-to-use project called JHipster.

This book shows you how to build an app with JHipster, and guides you through the plethora of tools, techniques and options you can use. Furthermore, it explains the UI and API building blocks so you understand the underpinnings of your great application.

For book updates, follow @jhipster-book on Twitter.


Over 10 years ago, I wrote my first blog post. Since then, I've authored books, had kids, traveled the world, found Trish and blogged about it all.

Open Source CMS Evaluation - Part I: Installation

Today I began my journey in evaluating Open Source CMS applications. The motivation for this adventure can be found in my post titled "Building a website with an Open Source CMS". Basically, I'd like to find a good solution to build small-to-medium size websites. I want full-control over the design and features, and it shouldn't be too hard to configure, install or administer. I received many suggestions on my initial post, and thanks to these comments, I'm considering the following CMS solutions:

The reason OpenCms didn't make this list is because of Tim Howland's first demo (he left the link in a comment). As soon as he dropped into a shell, I gave up. I also tried OpenCMS a couple of years ago and couldn't get it to work. I still have a bad taste in my mouth from that experience.

Of this list, I was able to eliminate 3 options quite quickly: Bricolage, MeshCMS and AtLeap. Bricolage b/c their site was down for days when I first started looking at CMSs. In addition, it's written in Perl - of which I've never written a single line - and I don't feel like I'd be well suited to customize a Perl product. As for MeshCMS and AtLeap, both of these were eliminated b/c of the lack of mailing list traffic. This represents a small community IMO and I'd hate to start using a product that's not well supported or well documented. This is unfortunate b/c I could probably customize these products easier than the rest. Nevertheless, it's my customers that are important, not me.

This leaves me with three Java solutions (Alfresco, Daisy, Magnolia) and two PHP solutions (Joomla, Drupal). I'm not too keen on including Alfresco b/c I've never heard of it, but readers of my last post recommended it, as well as my colleague Bill Dudney (another friend who forgot how to blog). At first glance, there are a couple of major differences between the Java and PHP solutions. The Java ones definitely take the cake on download size:

  • Daisy 1.3.1: 59 MB
  • Magnolia 2.1: 13.4 MB
  • Alfresco 0.6 (with Tomcat): 30.3 MB
  • Joomla 1.0.1: 1.7 MB
  • Drupal 4.6.3: 447 KB

Yes, large downloads is the nature of Java applications - but it's interesting to see the wide discrepancy b/c the 3 Java options listed here. In addition, it's a little disappointing that I can't download Alfresco standalone - why does it *have* to come with Tomcat or JBoss? Looking through the Tomcat directories and files - there doesn't seem to be any Alfresco-specific settings or files. Why can't I just download the WAR?

My goal in this session was to install these different CMSs and see which were the easiest to install - as well as which had the features I need to continue evaluated them. What I found was that Daisy is out of the running. This is primarily because it's a wiki, not a CMS. No wonder the JSPWiki guy was impressed with Daisy a few weeks back. Furthermore, the number of things you have to do to get Daisy installed is very long.

Magnolia, on the other hand, was very easy to install. Drop two WAR files into Tomcat and 10 minutes later you have a CMS. Yeah, that's a little scary - it took 10 minutes (647740 ms to be exact) to startup Tomcat after installing Magnolia. While I appreciate the easy installation, I'm still interested to see what kind of data store Magnolia is using. Is it using an embedded database or what? I didn't have time to look, but rather played around with the admin console a bit. I was very impressed with the admin console - even though I didn't figure out how to edit the homepage. It appears to be using Ajax everywhere. Right-clicking to edit a page even brings up an application menu (rather than a browser menu). Magnolia is impressive at first glance and will be included in Part II of my evaluation.

Alfresco, with a 0.6 release, was almost off my radar. The version number makes it seem like a very immature product - and the fact that it requires JDK 5 makes it seem even more immature. Upon startup, it spit out a number of errors - but they seem to be well documented in its "README_tomcat_linux.txt" file. I used OS X and despite the errors - everything appeared to be working OK. However, when I pulled up http://localhost:8080/alfresco, I immediately understood why Bill likes it. It looks like it's using JSF, and I'm willing to bet it's using MyFaces (he's a committer on the project). The disappointing thing I noticed after pulling up the initial page is that it's a login page. I'd expect to see a reader view initially rather than an admin view. After logging in, the interface seems very nice and easy to work with. However, after 30 seconds of clicking on stuff, I can't figure out how to get the reader view to show up - so I give up. I'm going to let this CMS graduate to Part II, but only because I didn't spend much time with it - and also because the UI looks quite polished.

I installed and played around with Daisy, Magnolia and Alfresco all in a 3-hour period today. First of all, I'd like to give props to all the authors of these OS projects as each was installable according to its instructions and I didn't have to google for a single setting. I installed Joomla and Drupal last week - both in under 10 minutes. Joomla was definitely more impressive - mainly because it's default homepage (note: this can change every hour) looks pretty cool. Drupal, on the other hand, is a bit more plain jane. This is not a bad thing necessarily - as it might be easier to design with a clean slate rather than remove-features, then-design. I did have to install PHP4 on my Mac to run both of these packages, but Server Logistics made that super easy. I also tried to install Joomla 1.0 on my Windows box (which has Apache 4.0.7 and PHP 4.3.3 from BlueGlue), but it failed halfway through the install with errors that my user/pass for the database were wrong. Not a big deal, but frustrating since it works fine on the Mac (and yes, the user/pass I'm using are correct).

Watch this space. Part II will address customizing each CMS to use an already-created theme, as well as playing around with each's features. I'd prefer a package that has built-in support for multi-author blogs - so that might make Magnolia and Alfresco look bad. However, I'm not going to hold it against them since I'm a Roller fan and committer. I don't mind using a 2nd application for blogging - especially if the built-in package is less than full-featured.

Conclusion: Alfresco, Magnolia, Joomla and Drupal are the easiest open source CMS applications to install (of the ones I looked at). Daisy was easy to install according to its instructions (of which there were many), but it's more of a Wiki than a CMS.

Update on Saturday at 1:00 p.m. - Based on reader's feedback to this post, I went ahead and installed three more: Plone, eZ publish (gotta love the domain name) and OpenCMS. All the previous CMS applications I installed on OS X, and I installed these 3 on Windows XP. I installed OpenCMS first, and while the setup was easy, it took 18 minutes to finish its importing of data. My Windows machine is easily 2x as fast as my PowerBook, so my guess is this would've been quite painful on the ol' Mac. Regardless, it's a one time wait-fee, so I can't really ding them for that. I played around with the Admin UI for about 5 minutes and found it extremely easy to use - as well as intuitive. I dig how you can view the content and edit it very easily. I never had to read any documentation to figure out how to work this system.

Next up was eZ publish. It took a bit of fiddling to get the installation to work. I had PHP 4.3.3 installed with Apache 2.0.47, and I upgraded to PHP 4.4 before trying anything. While setting up eZ publish, it told me it didn't work with 4.4, so I backed down to 4.3.3, after which it told me I needed at least 4.3.4. Thankfully, PHP is easy to install and upgrade on Windows and I got it all working fairly quickly. Of the three (and all the CMS's in fact), eZ publish has the nicest installer. The whole application and process gave me the feeling that it was the product I was looking for. It's designed to help you setup a website, and allows you to choose templates, features, etc. along the way. At the end, it stalls for a couple minutes - probably b/c it's creating everything and populating the database. The first thing I didn't like was the URLs (/index.php/feature). I wonder if that can be changed to be more path-based? Having an extension followed by additional slashes just doesn't seem right to me. From there, I logged in as an administrator and started playing around with things a bit. The Weblog feature seems very inadequate and doesn't even seem to support RSS. In addition, I couldn't figure out how to edit any of the templates in my browser. But the worst part was the admin UI was sssllloooowwww. It could have been b/c I had other stuff running, but I don't think so. eZ publish seems like a good system to recommend to friends who want quick and easy websites, but I don't think it's one for me.

The last CMS I installed was Plone. It was easy to install on Windows, but only b/c it has an all-in-one installer. I found it a bit strange that it doesn't install in a web server, but rather contains everything as part of the package. This includes Python, its own web server, and its own database (I'm assuming). It's an easy install, but I like the idea of installing a CMS into an existing web server rather than having a CMS with an embedded web server. The admin UI is simple enough to use, but it's very boxy and seems like it would be difficult to customize into a corporate or small business website. Please let me know if you feel this to be untrue (pointing to existing nice-looking installations would help). I didn't like the fact that it highlights members quite prominently, but that can probably be fixed with some good template-tweaking. The most disappointing thing I found was that I was unable to edit "skins" within the admin console. You have to download a separate package, customize it yourself, and then install it. What a pain, especially since I'd really like to be able to 1) modify template, 2) save and 3) view - just like this site allows me to do. For this reason, as well as the embedded server feature, I'm going to have to pass on Plone as well.

Conclusion 2: Alfresco, Magnolia, Joomla, Drupal and OpenCMS are the CMS applications I will continue to evaluate this weekend. I have to make a decision by Monday morning so I can start building a site with it. If any of these CMS'es don't allow me to customize its templates from a browser, please let me know so I can take it off my list.

Update on Sunday at 9:30 a.m. - I'm going to drop Alfresco and add MeshCMS for reasons stated here.

Posted in Open Source at Sep 23 2005, 05:39:04 PM MDT 38 Comments

Take a look at OpenCMS 6.0. Its by far the best Java CMS!! None of the listed ones (Magnolia the closer one) comes closer to it.

You just have to take a deeper look.

Posted by Pedro Costa on September 23, 2005 at 06:16 PM MDT #

Pedro - I hate to be skeptical, but why should I believe you? Where's your proof? I'm trying to widdle down my options and you're making it harder. In reality, I have a suspicion that one of the PHP solutions will win - mainly because they seem lighter weight, as well as it's likely easier to find (cheap) hosting for them.

Posted by Matt Raible on September 23, 2005 at 06:24 PM MDT #

Matt you might also take a look at Marc Liyanage's distribution of PHP for Mac OS X which seems to stay more current than the Server Logistics version does. It installs quite easily and has many of the features turned on It does lack the Turck MM Cache but this PHP accelerator and optimizer seems to ceased development. Zend's own Zend Optimizer does a great job and installs easily on top of Marc's PHP distribution.

Also PHP is installed by default on at least 10.3 and 10.4. In the client versions of these systems it's not turned on in Apache by default but can be by editing the /etc/httpd/httpd.conf file. This is also the more current 4.3.11 version which has some important bug fixes if a machine is going to be publicly accessible.

Posted by Joshua Brauer on September 23, 2005 at 06:28 PM MDT #


My proof is my experience. Sometime ago I had to evaluate some products to decide which one to choose. I ended with a list close to yours. After a while I had only Magnolia and OpenCMS. I installed both and played a little with them.

I really like OpenCMS Administration Console, Module concept, Templating Mechanism (btw, in 6.0 you can do it in JSP with very nice custom tags, not only in xml), and automatic structured content editors simple by writing w3c xml schema.

The documentation is great (by far the best of the list) and you even have a published book (

You should take a deeper look.. If you want I can let you use a recently installation I made for demonstration (private) purposes.

Pedro Costa

PS: I'm not affiliated with OpenCMS.. :) I only really liked it and choose to use it.

Posted by Pedro Costa on September 23, 2005 at 06:50 PM MDT #

Hi Matt,

Probably ?Plone? - (Python) doesn?t answer all of your requirements but I am surprised why is not even mention. Let me know if you need additional links to very customized web site using Plone. I have used it with huge success for the same purposes as yours and I was pretty happy with it. The installation is just 2 -3 clicks and you will have a web site working. It comes with own server ??Zope? but you can very easily rewrite urls with Apache and have another server.

I am developing primary with Java, but when I had to evaluate CMS, the java solutions couldn?t even pass the first evaluations. However, recently I discovered a CMS solution that I believe will satisfy all of your solutions. ?aLive? . I haven?t used but it looks very promising. The good thing is that is written with java.

I hope this could be of some help.

Regards, Igor.

Posted by Igor Stoyanov on September 23, 2005 at 09:21 PM MDT #

Magnolia is based on the new JSR 170: Java Content Repository (JCR) . It is using the Apache implementation of the JSR 170 spec called Jackrabbit which uses a file based repository. The concept of standardized content repository is a good one and the JCR API is pretty easy to use. Since Jackrabbit is still in the Apache incubator I would consider Magnolia to be on the bleeding edge. However, that is were all the fun it at, so I am willing to suffer a few paper cuts. Unfortunately, Magnolia is a little too much for what I want to do. My primary motivation is to have the ability to inject manageable content into a couple of existing webapps that were kick started using Appfuse. I am off going to play match maker with Spring and Jackrabbit. If you are interested in what I come up with let me know. I look forward to seeing the results of your CMS shootout.

Posted by Aaron Jackson on September 23, 2005 at 09:28 PM MDT #

I second Igor, Plone should definitely be mentioned along with eZ Publish ( which is probably one of the easier ones to get running with its site template functionality. eZ Publish is PHP based, has an extensive list of clients both in Europe and the US, has an ISP dedicated to it (, and may be one of the easiest to implement from a business user point of view. Cheers & keep up the great work.

Posted by Eric Shea on September 23, 2005 at 11:14 PM MDT #

curious how you are distinguishing daisy as a CMS or wiki...? i.e. what are the missing features? There are certain aspects of Daisy I find quite nice - XML/HTTP interface, serverside javascript, JMS use (which fits into other parts of my app), nice faceted browser widget, query based RBAC, nice lucene implementation (index updates sent over JMS), RSS, book publishing features (of little interest to me, but I assume would be interesting to someone like Virtuas/Sourcebeat),etc.. I guess I look at it as having much more functionality than just a wiki (e.g. I was a JSPWiki user) - the separated 'content repository' is also nice - the cocoon stuff is only the wiki implementation on top of the repository (I think xsl has it's place, it's just that I am more comfortable with JSP's to generate my html, and am now looking at using mostly all 'ajax' on my current project anyway). i have no affiliation with daisy, just curious how you were defining your requirements, since I have been using daisy for a while and have been fairly happy - the developers are helpful and very responsive too. if you are looking at static site export/deployment, well thought out content import/export functionality, turning off versioning for certain objects or deleting versions, polished interface (interface is not bad, but there are many that are better - but I don't intend to make long term use of the cocoon client anyway), etc.. - then I too have a few gripes. guess I've always thought people defined CMS's rather ambiguously. my main interst in daisy is the repository server though, i've been using the whole package (repository and cocoon wiki frontend) over the last few months for evaluation and organizing/sharing information. i'd be happy to talk to you some more time, and compare notes - i live in Denver.

Posted by ian on September 24, 2005 at 03:25 AM MDT #

Aaron Jackson, if you find AppFuse with manageable content Blandware AtLeap ( is just for you. On one hand AtLeap has solid foundation on the other hand it has multilingual CMS with full text search. I advise you to examine AtLeap in depth.

Posted by Andrey Grebnev on September 24, 2005 at 03:30 AM MDT #

IMO, the perfect CMS doesn't exist yet. But I once met the Magnolia guys and I must say they're very smart. The Magnolia offices are only about 20 miles from where I live, so that would be my decision criteria :-)

Posted by Lars Fischer on September 24, 2005 at 06:26 AM MDT #


Add me to the list of those that think you need to add Plone for this CMS evaluation to be more relevant.

I have started to look at Plone and am quite impressed. While not perfect, it does seem to split things down the middle between flexibility and ease of use. Some big name OSS sites run plone, like Debian and Ubuntu. NASA has used it for some of their Mars missions. MOTU (commercial recording equipment) also uses it for commercial purposes.

Being written in Python can be plus. The lack of static typing can be a real advantage over Java.

The packages for Debian make the installation rather simple using apt-get:

$ apt-get install plone-site


Posted by Ben on September 24, 2005 at 12:19 PM MDT #

Coming from the Java world you probably think that a basic feature of any programming language, development system, framework or web platform would be comprehensive, useful developer documentation. Since it's good that assumptions get challenged every now and then, Zope and Plone are available for just that.

Hmm... let me see... a framework with a NIH custom object database with a weird concept of transactionality and how to roll back transactions (just call setter functions with the old values... or at least values which were old at some point in time,) truly the most broken Oracle support I've seen so far, by default sends the username and password of your users as a MIME64-encoded cleartext cookie for every request, and for all this and much, much more doesn't really deliver any crucial extra functionality not present in almost any content management system... well, unless you count the "feature" that you'll be paying the Zope consultants through the nose for the rest of the product lifecycle. That's certainly a feature which really is missing from the handful of better, standard, open source solutions available today.

What, me, bitter? Taxpayers footed our bill to our excursion to the Zope/Plone-land, so I'd say that they could have something to say, not to mention our internal customers who had to postpone our launch so that we could rewrite the system with proven Java components. Proven by actual live production customers with a similar system, not some fairytale "we had to architect our product around the limitations of Zope and Plone, drop some planned core functionality and put it behind Squid, so now it kind of works, unless you want to download or upload large files" customers.

Posted by Anothermike on September 24, 2005 at 01:30 PM MDT #

Hi Matt,

Magnolia takes a while (and uses huge amounts of memory) the first time you start it up with a fresh installation. It bootstraps all the sample and setup data from XML files into a fresh repository. Once that's done, the subsequent startups are much quicker (and use much less memory).


- stuart

Posted by Stuart on September 24, 2005 at 01:30 PM MDT #

Hi Matt!

I am passing through the same evaluation process (in the last 1-2 months). More or less at different stages I have walked the same list you are mentioning. Later my requirements got stricter so I finally reached the point where only Magnolia and OpenCMS survived :-). And continuing the process, I can say that the fact that Magnolia is based on a JSR170 implementation is making a big difference to me. Features like versioning, transactionability are very important to me, so you may already guess who will be the winner ;-). However, I couldn't find in your post a specific list of features you are looking for, so I will avoid making any suggestions. Good luck!


Posted by Alexandru Popescu on September 24, 2005 at 03:24 PM MDT #

Alexander, my initial list of features can be found here. I'm curious to know - did you evaluate Joomla, Drupal and Bricolage as well? These seem to be the top-rated by the press. Why did you choose a Java solution over a PHP one?

Posted by Matt Raible on September 24, 2005 at 03:31 PM MDT #

I don't have the initial list (as the process started long time ago). Still I can see on my machine Drupal and Plone. I have also to mention that in my initial list there were some solutions that cannot be categorized as CMS (f.e. LifeRay or Lenya). The main reason for choosing a Java solution over a PHP/Python one was that they seem more unitary. Moreover I was looking for a solution that is according to some specifications (this will assure its later portability). Taking into account that my requirements are a little more complex than the ones you are stating (thanks for pointing) and I am feeling way more confortable with extending/supporting/debugging a Java solution, this was one of the reasons. I was also impressed by the simplicity of one of the alternatives (the 2 mentioned above), I haven't been able to disregard the fact the according to my specs I can consider them only light solutions (no versioning, no transactionability, no standard access modes).

I would like to add more, but I would prefere to do this offline ;-).



Posted by Alexandru Popescu on September 24, 2005 at 03:56 PM MDT #

Sorry, I'm a unix guy, shells don't scare me much- I need to remember the effect they have on normal people... :)

FWIW, that demo was just for creating a structured editor- you can do almost anything you need to do without one. Structured editors are nice for certain kinds of content - product catalogs and press releases, but not so nice for others. Open CMS is certainly capable of doing regular pages without all that stuff. The openCMS approach to structured editors is actually similar to the interwoven approach, but they have much nicer wysiwyg stuff too. I made the demo because the process for making structured editors isn't well documented yet, while the other stuff generally is.

I'm looking forward to checking back in on Monday and seeing who the winner is-
Tim Howland

Posted by Tim Howland on September 24, 2005 at 05:11 PM MDT #

Templating in Magnolia is straightforward, it uses JSP and a custom tag library. The templates that come with the default installation are kept simple to serve as an explanation of the concepts. A more elaborate set of templates can be found on the wiki. There is also a templaters quick start quide available that explains the concepts. It should get you up and running in little time. One of our aims at Magnolia was to make things easy, and that included templating. We didn't want to produce yet another templating mechanism and yet another script language that is not reusable outside of our domain.

We have a very active community, I think thats also a good point to consider. Finally, while initial setup of some systems might be easy, that doesn't mean its still fun when it gets serious. There are some enterprise concepts behind Magnolia, like a publish/subscribe mechanism that lets you do things like have the authoring environment inside of your firewall, the public site outside; or use a multi-stage setup. Version 2.2 already in SVN has JAAS so you can easily combine with other apps and only authorize once. (might be useful for your blogger integration)

Finally, JSR-170 is a biggy. We started 2.5 years ago when nobody knew if JSR-170 would ever make it. Its been a big gamble, but its starting to pay off. Today you have the choice of at least Jackrabbit, Exo, CRX (commercial), Jeceira as JSR-170 repositories; with persistance managers for a number of databases e.g. BerkleyDB or CQFS available. The industry has announced broad support - from IBM to Oracle to Openweb, JSR-170 is on the game plan.

I suggest you have a look at the idea behind JSR-170 to see its value. There are a couple of write-ups on the web, I am sure you can find them yourself ;-)

- Boris

Posted by Boris Kraft on September 25, 2005 at 02:52 AM MDT #

So you did not evaluated MeshCMS because it has a too small mail list traffic?
:) :) :) - this is very very interesting, so please let me understand:
  • It has documentation, but that's not good enough(even if many of the choosen doesn't really have documentation)?.
  • It's so simple to use that evey Java newbie can uderstand it, extend it but this is also not good enough?
  • It takes just one minute to deploy the WAR and the CMS is ready to go, but this is also not good enough?
  • It's so easy to use for the customes too since it's file based with a WYSIWYG on it and no other concepts are required to be learn, but this is also not good?.
  • It's so lightweight that one can easily host with only 64MB RAM many running sites, but this is not good enough?<li/>
  • Because of it's simplicity, there are almost no questions on the mail lists, and this is supposed to be a KO argument against it? Why should one ask something if even a newbie can master the CMS? Even more newbies can extend it without problems.

We've evaluated hundreds of CMSes for our customers(and was always involved 'simple users' from the customer side for the ease of use tests of the CMSes) and the points enumerated by me were much more important than some other religious arguments or fancy technology arguments that only oil the ego of some developers instead of helping the customer doing it's job.

I'm not saying that MeshCMS is perfect nor that it has very nice sourcecode, but it's so simple that the developer has the certainty that whatever the customer needs, it's easy to make and this in a very fast way. If you use an intelligent IDE (with good support for JSPs - e.g. IntelliJ), than you can understand the entire code in less than an hour with a clear idea about how to extend it for your requirements.

I have the impression that many developers make CMSes not for their customers but for themselfs. I'm calling those type of software: Pension Insurance Software, cause one really get's the impression that it was made to guarantee that only the authors are(can be) called when something is required.

Posted by Ahmed Mohombe on September 25, 2005 at 04:13 AM MDT #

Oh well, Alfresco is an Enterprise CMS, not a Web CMS like Magnolia. Of course there is no "public view" of a web site out of the box, because Alfresco is basically a content repository. Matt, I've got a lot of respect for you, but you are comparing apples to oranges here.

Interestingly, since the Alfresco team is implementing a JSR170-compatibility layer on-top of their own Service API, Magnolia could soon use Alfresco as a backend.

Posted by Thorsten Roskowetz on September 25, 2005 at 08:18 AM MDT #

First of all, I'd like to thank everyone for keeping me on my toes. Your comments might make this evaluation harder, but they also make it better.

<strong>Thorsten:</strong> I noticed last night that Alfresco is not really what I'm looking for. If you look back at my initial requirements, it's surprising that someone even recommended it. Furthermore, it's still an early product that doesn't expect to have a production-ready release until later this year. It does look like a cool product, but it's more of a virtual file server (as far as I can tell) than a CMS for the web.

Because I'm dropping Alfresco and Ahmed made a pretty convincing argument, I'll add MeshCMS in it's place. After installing MeshCMS (in 2 minutes no less), it definitely looks like a simple to use CMS that might be perfect for some of my customers.

Posted by Matt Raible on September 25, 2005 at 09:32 AM MDT #

Hey you didn't mention one of my recommendations - login here with user admin, password admin and give it a 30 second whirl.

Posted by mal on September 25, 2005 at 03:00 PM MDT #

Mal - thanks for the demo link. I logged in and played around with it - Exponent definitely looks cool. Unfortunately, I have to make my decision by tomorrow morning. I'd like to try it, but its 0.96.3 version number makes it seem a little new. Furthermore, folks that forget to make their web pages uses a white background and instead default to the browser's background color don't strike me as web developers. ;0)

Posted by Matt Raible on September 25, 2005 at 03:28 PM MDT #

Matt, I've read your post with interest as I'm about to a similar evaluation process - many useful pointers. A PHP based CMS on my list not mentioned here is <a hre="">MySource Matrix - I haven't gotten around to install it yet but the demos are pretty impressive. Only negatives from what I can see is that modules such as site-search are not free.

Posted by jakobw on September 25, 2005 at 05:14 PM MDT #

I've used a few of these, and have no particular recommendations among them. I wonder if you've looked at the list at


There are reviews and demos of some of the best PHP-based solutions.

Posted by Scott Sauyet on September 28, 2005 at 12:07 PM MDT #

[Trackback] A good evaluation of some of the more popular open source CMS software packages available. ...

Posted by Business Technology on September 28, 2005 at 06:56 PM MDT #

I want to use magnolia repository in my website..just as a content repository.... so how can i use it.. the issues are : 1. Is there any example how to access repository using Magnolia API from my project (Struts based) where the repository will be at server side. 2. Is there any example how to use tag library of Magnolia (if it is reasonable to use for accessing) in our website to get the PAGE CONTENTS from Magnolia Repository. Thanx Mehdi

Posted by Mehdi on November 25, 2005 at 12:55 PM MST #

Did you evaluate Joomla/Mambo (whats going on with that anyway??), Drupal and Bricolage as well? These seem to be the top-rated by the press. Why java? i find java is slow.

Posted by Teesside Website Design on November 04, 2006 at 05:20 PM MST #

I'm new to CMS and i'm looking for a java based CMS. Currently i'm having trouble installing openCMS can anyone offer some help. I'm working on a windows xp home ed sp2 machine. I have Java SDK, J2EE, Tomcat 5.5, and MySQL 5.0 installed. I copied the opencms.war file over to the tomcat\webapps directory. openCMS didn't work, i extracted the WAR file into that directory and still it didn't work.

Posted by Al on January 30, 2007 at 09:41 AM MST #

In response to <em><strong>Teeside</strong></em> (and as a comment to the article), it is incorrect to lump Joomla/Mambo together as if they were the same CMS. Joomla is a fork of Mambo and started out with the same codebase. They are two separate open source CMS that have diverged significantly in the past year.

You can find the official Mambo sites at

Downloads are available at:

The Joomla link is in the post as Joomla/Mambo, linking to the Joomla site.

Posted by Elpie on February 22, 2007 at 08:26 PM MST #

I am also evaluating cms, right now I am looking at alfresco and magnolia. Thanks for starting this thread.

Posted by surajz on November 13, 2007 at 09:50 AM MST #

Java is not slow... I think that Joomla / Drupal are great options for the php world. However, if you are into java (for lots of good reasons... it's the number open development lang. in the world!) I would go with Mgnolia. Very good, easy to maintain/change and pure java.

Posted by Ido on January 11, 2008 at 12:16 AM MST #

You should have evaluated WebAPP from WebAPP Web Automated Perl Portal, an open source CMS in Perl. To start with it is the EASIEST CMS out there to install, because its self extracting function it should not take more then 2-3 minutes to install (yes, including the upload time!). Try it you would not regret it. my2cents

Posted by my2cents on February 10, 2008 at 03:13 PM MST #

Hi I think you need to consider long term maintenance, as in patching, upgrading to minor releases and jumping to major releases etc, into the equation. Installation is probably a one time affair. Whereas maintenance is for life.
I have been using Drupal for a long time (2+ years?) and have very positive experience. I would heartily recommend it.
The things I like:
- The module system is fantastic,
- there are tons of themes, and customizing is reasonably easy. (the 5.x default is so pretty)
- Caching of content takes care of the speed issues (atleast for my somewhat static sites)
- the community is friendly and pretty large.
- The content can be organized as "books" - check that out.
- WYSIWYG editing with TinyMCE
- There is free forum based support, and in case you need pro support, there are some very capable folks out there ( . Though I have never engaged them.
- Nice permission system (roles based)
- Runs on default Debian-stable well (very important factor for me)
- They keep polishing, improving the code continually.
But I found the nodes based organization a bit complex when I got started with Drupal. I would give Drupal a 9.5/10
Disclaimer: I am just a satisfied user, but have no other affiliation or commercial interests with anyone at Drupal

Posted by Anand Vaidya on February 12, 2008 at 01:55 AM MST #

Hi friends!! This is Raju I am new to use java based open source CMS. So please suggest me witch CMS is reliable and provides good functions. If possible send me mail to [email protected]

Posted by Raju on February 12, 2008 at 06:51 AM MST #

Drupal has a nice API ad many nice themes because most of its developers are designers and not programmers, no doubt. But I did not like the fact that it uses PHP. Which I think is unsafe, and takes too much resources (and costs) as well as too slow. Some examples:

1.) Speed: go to the bottom at: WebAPP (a CMS portal in Perl), and choose 50 for latest posts (admins can also have hundreds there!), it will not take more then 1/2 a second for a Perl script to produce the new page, while drupal, wordpress and others CMS in PHP can only dream about.

2.) Addons: go to and search for anything you like, you can add any of those addons to WebAPP or any other Perl based CMS.

3.) Compatibility: the db you escribe is suppose to be fast (see above, it isnt...) but being reltional db it makes it very little compatible with other dbs, in other words... you are stack now with drupal without any possibility to convert! This is not the case with flat db as in WebAPP and others. On the other hand if you want to go relational db, you can still do it in Perl and kep db computability.

4.) Further development and research: its true that PHP has ben in focuse for few years now and many scripts are developed and "polished" as you named. But Perl has been there for ages, and has/is being doing that and will continue doing that in much broader terms.

My conclusion, if you need to make a hobby site without being too much in concern about its speed and security, use PHP CMS else if you need something more serious then choose Perl CMS.


Posted by Terry on May 24, 2008 at 06:45 AM MDT #

How can anyone here take any of the author's recommendations seriously when he rates Joomla to be superior to Drupal because "the homepage" seemed cooler or judge's the size of a user community by the mailing list traffic.(It's possible that there are way less issues - hence the lower traffic, not to mention 999 other reasons) or by the number of minutes it took him to install (fyi all of these can be installed by an intermediate level user in well under an hour, especially for testing, and many can be installed in under ten minutes).

He never has heard of Alfresco? That's a little scary. Try Googling it and you can tell it's one of the most widely deployed and developed enterprise ECM/CMS's out there, not to mention one of the most powerful - far more powerful than any of the PHP solutions.

Finally, without any reference to the type of server he was testing on other than his mention of OS X, hinting at a personal computer and not even a real server in a production environment or data center, his guesswork judgements are further irrelevant as the performance will vary greatly between most of these depending upon the OS, memory, tuning, etc.

This is way too subjective to get anything useful out of it other than a list CMS's you should all test yourself.

Posted by Brandon on July 22, 2009 at 12:42 AM MDT #

Alfresco might be powerful, but it is difficult to install. Its too big. I had to stop virus scanner to just make it run. I am liking riot family and magnolia so far. I will try Drupal next.

Posted by sj on January 19, 2010 at 03:05 PM MST #

Post a Comment:
  • HTML Syntax: Allowed