Linuxdoc Linux Questions
Click here to ask our community of linux experts!
Custom Search

7. Installing MMBase

Download the binary distribution of MMBase, and the additional applications you need (i.e. CloudContext Security, Media, Email) (see the next section), from: --> Download --> Releases


MMBase version 1.7.2 contained a nasty bug, resulting in problems with the editwizards. The 1.7.3 release includes a bugfix for this problem.

Make sure you pick out the right version for the Java 2 JDK installed on your system. You can find out the version currently installed by typing:

  java -version

Extract the binary distribution of MMBase, copy it into the Tomcat directory, and change the ownership of the MMBase directory:

  cd /usr/local/tomcat/webapps/
  mkdir mmbase-webapp/
  cp -R .../mmbase-x.x.x/mmbase-webapp/* ./mmbase-webapp/
  chown -R tomcat:tomcat ./mmbase-webapp/


Installing MMBase version 1.7 on Tomcat version 5 resulted in version incompatibilities:

  FATAL org.mmbase.servlet.MMBaseStartThread -
      Could not find the MMBase module!Class
      javax/servlet/http/HttpServletResponse violates loader constraints

We had to disable the RMMCI library to get this installation up and running:

  mv /usr/local/tomcat/webapps/web-app/WEB-INF/lib/mmbase-rmmci.jar \

For MMBase version 1.7 running on Tomcat version 5, enable the Xerces libraries:

  mv /usr/local/tomcat/webapps/mmbase-webapp/WEB-INF/lib/xalan.renametojar \
  mv /usr/local/tomcat/webapps/mmbase-webapp/WEB-INF/lib/xerces.renametojar \
  mv /usr/local/tomcat/webapps/mmbase-webapp/WEB-INF/lib/xml-apis.renametojar \
Or you will have fatal errors like:

  FATAL org.mmbase.servlet.MMBaseStartThread -
      Could not find the MMBase module!org/apache/xpath/XPathAPI

For MMBase version 1.6 running on Tomcat version 4, replace the Tomcat Xerces libraries by those coming with MMBase:

  mv -i /usr/local/tomcat/common/endorsed/xercesImpl.jar ~/
  mv -i /usr/local/tomcat/common/endorsed/xmlParserAPIs.jar ~/
  cp /usr/local/tomcat/webapps/mmbase-webapp/WEB-INF/lib/xalan.jar \
  chown tomcat:tomcat /usr/local/tomcat/common/endorsed/xalan.jar
  chmod 644 /usr/local/tomcat/common/endorsed/xalan.jar
  cp /usr/local/tomcat/webapps/mmbase-webapp/WEB-INF/lib/xerces.jar \
  chown tomcat:tomcat /usr/local/tomcat/common/endorsed/xerces.jar
  chmod 644 /usr/local/tomcat/common/endorsed/xerces.jar
  cp /usr/local/tomcat/webapps/mmbase-webapp/WEB-INF/lib/xml-apis.jar \
  chown tomcat:tomcat /usr/local/tomcat/common/endorsed/xml-apis.jar
  chmod 644 /usr/local/tomcat/common/endorsed/xml-apis.jar


If you will not be using an Apache JK 2 mapping or reverse proxy (see further below) as a front-end to your MMBase server, you can add to the file /usr/local/tomcat/conf/server.xml:

  <Context path="/mmbase" docBase="/usr/local/tomcat/webapps/mmbase-webapp" debug="0">
  <!-- if you want symlinks to work: -->
  <Resources className="org.apache.naming.resources.FileDirContext" allowLinking="true" />

This will allow you to access your MMBase server using (replace <hostname> with your hostname):


instead of:


Check if the ImageMagick convert tool is in your path:

  which convert

If not, add it to /usr/local/tomcat/webapps/mmbase-webapp/WEB-INF/config/applications/Resources/builders/images.xml. For example:

  <property name="ImageConvert.ConverterCommand">/usr/bin/X11/convert</property>

Make sure that the directory /usr/local/tomcat/webapps/mmbase-webapp/WEB-INF/config/builders/applications is writable by the servlet engine user (for auto-installing builders):

  chown tomcat:tomcat /usr/local/tomcat/webapps/mmbase-webapp/WEB-INF/config/builders/applications
  chmod 775 /usr/local/tomcat/webapps/mmbase-webapp/WEB-INF/config/builders/applications