This post is part of a series which will be focusing mainly on Hippo CMS’s extensibility. These posts are more targeted towards the developers who want to customize and enhance the core CMS functionality.
Hippo CMS is part of the Hippo’s Open Source Enterprise Content Management System. It provides a browser based user interface for managing the content in the Hippo Repository. Hippo CMS is fully customizable and developer friendly CMS that provides various ways to extend its functionality.
Hippo CMS application is built using Apache Wicket, one the best frameworks available today for building web applications using Java. Wicket is known for its simplicity, and its component-oriented programming, thus providing solid base for the Hippo CMS.
Hippo CMS has pluggable architecture which boasts of first class plug-in mechanism. Depending on your needs, you can create complex document types, extend and enhance the user interface and even create a combined add-on that can change the Core CMS and even replace. All you need to know to build the GUI add-ons is Java and Wicket.
I’ll try to explain each of these extensibility in detailed examples in this series of blog posts. So let us get started.
Getting and Building Hippo CMS
I’m assuming you are using a Unixy Operating system (Linux/Mac OS X). If you use windows replace the commands appropriately.
Before starting to checkout the source and building please make sure you have the following installed on your computer.
Open a command line and check out the code for Hippo ECM using following command. Please note that if you are using an graphical client such as Tortose SVN, then you can checkout using the appropriate menu option.
svn co http://svn.onehippo.org/repos/hippo/hippo-ecm/tags/Tag-HREPTWO-v2_06_06 cms-7.1
Now change to the cms-7.1 directory and build the Hippo ECM using maven.
cd cms-7.1 mvn clean install [-DskipTests]
If you are getting out of heap space error, set the MAVEN_OPTS using the following command:
export MAVEN_OPTS="-Xms256m -Xmx700m -XX:MaxPermSize=1024m"
If you are building for the first time, please note that it may take some time since maven needs to download all the dependencies. Once you are done with building Hippo ECM and you can run the provided Quick-start WAR file to get a feel of the user interface and the CMS application.
Change to the quickstart/war directory and run the hippo-cms web application using embedded jetty.
cd quickstart/war mvn jetty:run-war
After jetty has been started, goto http://localhost:8080/cms to check the version of the CMS that you’ve just built. You can login using default username/password combination of admin/admin.
Note that you can even deploy the generated war file in Tomcat or an Application Server. Check the documentation for more information.
This concludes the first part of Hippo CMS Customization Part 1- Getting Started . In the next post of this series we will see how to create a simple backend templates (a.k.a Document Types) using Document Type Editor provided within Hippo CMS.