views:

997

answers:

11

What would be a good choice of a programmable/extensible open-source content management system for Java developers?

We've tried our hand at "Liferay" with a poor result after 15 months of work mostly due to its lack of programmability. It's not a product directed towards developers.

We need to reboot the project now and we're looking for some good options.

So far, the strongest choice (from the developers) has been to just write everything by hand using JSF, but I'm still not entirely convinced of that, after too many problematic custom CMS implementations under my belt...

+1  A: 

Take a look at the list of open source Java CMS offerings at Java-Source.net.

I have not personally used any of the listed systems, but I know folks that claimed to have good experiences with Alfresco and OpenCMS.

Brandon E Taylor
Yes, we've already looked into that, but it's just too 'impersonal'. I'd like to hear some true stories about successes or failures people had using these projects. Thanks anyway.
Dema
+3  A: 

In Liferay's defense, they are aimed more as a portal than a CMS. While looking at Alfresco and OpenCMS as suggested by Brandon, you may want to also have a look at Magnolia. I also haven't used any of them.

digitaljoel
+2  A: 

Take a look at Riot: http://www.riotfamily.org

eqbridges
A: 

Another possibility is Apache JackRabbit. This is described as a Content Repository rather than a CMS, but if your developers are thinking of implementing from the ground up, this may be an appropriate "ground level".

(I've never used JackRabbit, but a co-worker swears by it.)

Stephen C
Actually, Liferay makes use of it, but, as you said, it's not a CMS and it's just really far from being a good enough start point for us.
Dema
+1  A: 

Did you look at Hippo CMS? JAckrabbit is used as a repository.

http://www.onehippo.org/cms7/

+1  A: 

Jease (http://www.jease.org) may be a good start if you're interested in a programmable and extensible content-management-platform.

mjablonski
+5  A: 

Alfresco is definitely a good piece of software with nice corporate references but I'm not sure it's that programmable/extensible.

OpenCMS is more a framework than a ready to use solution (so it's already closer to what you're looking for) but I didn't find it very easy to use and develop upon.

I faced lots of troubles with Magnolia the last time I checked/tried it (things might have change since then, it was some time ago).

I have no experience with other solutions like Hippo CMS, Daisy CMS, dotCMS, Apache Lenya...

Actually, I'd check Nuxeo in your case.

Pascal Thivent
A: 

Good experience with Nuxeo here.

Patrick
+1  A: 

Did you check out Hippo CMS? It's based on Wicket, Jackrabbit & Lucene & has a plugin architecture.

the good thing for your case is the integration it has with Apache Jetspeed. So you can publish to a website with their hippo site toolkit or use Jetspeed (Hippo portal) as there delivery framework.

It's all Apache licensed, which could make it even more attractive for you.

Tjeerd Brenninkmeijer
+2  A: 

I'd suggest to be focused on solutions based on jsr-170 or better on JSR-283 specification which is implemented by Apache Jackrabbit. My colleagues are doing CMS just based on Jackrabbit and I heard a lot of times that the other CMS such as apache lenya or openCMS which do not support jsr-170 will suffer in future from incompatibility. OpenCMS might have it in version 8.0, but openCMS is loosing anyway as far as I can see in comparison to the others.

It depends what do you need it for. I'd be interested in support for portlet specification and which portals the cms supports and how deep is the integration in addition to simple view layer.

Also it is very important to check for AtomPub support. This standard/protocol RFC 5023 is stronger and stronger and it plays an important role in information exchange. CMS should be able to import / export content via AtomPub, or at least have good documentation for integration with AtomPub server like Apache Abdera. For instance, Google bet on AtomPub everything if you look at the way its APIs are done.

I'd choose:


Alfresco - more features, integration options (Liferay, JBoss portal), document management, they're working with google API


Hippo CMS - smart technologies and architecture and overall features as to the community version of Magnolia and nice step with the jetspeed integration.


EXO platform solution: http://wiki.exoplatform.com/xwiki/bin/view/JCR/eXo+JCR+Implementation - It's interesting especially since the exo+JBoss partnership


Jackrabbit itself if you have capable developers to build it according to your needs

lisak
A: 

Have a look at Walrus CMS - it's easy to use, employs simple clear architecture and is highly extensible.

miceuz