The MMBase Content Management System

Web Name: The MMBase Content Management System

WebSite: http://www.mmbase.org

ID:291271

Keywords:

MMBase,The,Content,System

Description:


The MMBase Content Management System

Table of ContentsIntroductionCurrent StatusTechnical detailsFeaturesDatabase abstraction and data modelsGeneric editorsTask based editorsCaching and invalidationClusteringRMI and staging/liveImagesTemplating taglibPluggable securityModularityBuildersApplicationsComponentsFunctionsModulesOther projects hosted at github.com/mmbaseOriginally at the subversion server at scm.mmbase.orgForked because dissappeared themselvesSites still running on MMBaseThis pageIssue managementPlans for the future

Introduction

MMBase is a Content Management System that was relatively popular in the zero’s mainly in the Netherlands. It was originally developed (around 1996) at VPRO (github, this too)

It was open sourced around 2000. Since 2002 it was supported by the MMBase foundation.

Current Status

The product more or less died in the early 2010’s. The original site and servers perished in 2020 or 2021 (?). The domains (mmbase.nl and mmbase.org) were in possession of one of the origjnal sponsors XS4ALL, and were transferred in september 2021.

The code base was copied to github a few years before.

Technical details

MMBase is coded in java. It used to have its own templating language (SCAN), but soon templating was mostly done in JSP, and an extensive 'tag library' was provided.

An early history and overview was also published in IBM Systems Journal · February 2005

The last release was MMBase 1.9.6. Releases used to be in our own MMBase Maven repositories (http://www.mmbase.org/maven2, http://www.mmbase.org/snapshots), which don’t exist either anymore. I’ve tried to push some artifacts to maven central and sonatype) in the meantime. This work is not completed. The presently default branch on github is the MMBase 1.9 branch. May be it would be usefull the at least create and publish a 1.9.7 version and publish all its artifacts to maven central.

At the time (around ~ 2010 or so) we were actually busy with an MMBase 2.0, which would have involved 'portlet' functionality and such. We may try to release some of it after all. We also started to split up the mono-repository of MMBase 1.9 in several distinct github repository like:

bom: Just a maven pom file with dependencies

bridge: Collects interfaces to MMBase. MMBase used to have at least 2 implementations:

The core implementation, which backs all data by a relational database. The database layer uses XML’s to define possible tables, and supported several database implementations like MySQL, PostgreSQL, HSQL, Informix, and IIRC even Oracle.

The RMMCI implementation, which is backed by another MMBase via RMI. This was used e.g. to create a workflow with 'publishing', where via RMMCI data was synced.

taglib: Used in templating, talks to the MMBase bridge, but also contained a lot of utility tags.

utils: Collects several utilities. E.g. MMBase had its own logging framework (originating before similar products like slf4j)

Which hopefully will make 2.0 versions of these a bit more usefull. E.g. I’d myself sometimes wish I could use these nice mm: tags again, or perhaps some classes from org.mmbase.util even if I’m not using MMBase itself anymore.

Features

Database abstraction and data models

MMBase has a database abstraction layer, but was always based on relational databases like MySQL or PostgreSQL.

Using XML configuration files one would define the possible tables (referred to as 'builders'), and possible relations between them (which themselves are 'builders' too). These 'builders' could extends from each other, and the 'core' of MMBase would always provide the most basic ones.

Generic editors

Using the thus defined model of data, 'generic' edit tools exists. Originally human editors were using these kind of editors.

Task based editors

Later appeared 'task based' editors, or 'editwizards'. These were using XML’s to define common 'edit tasks'

Caching and invalidation

Clustering

It is possible to run several instances on the same database. The instances may broadcast events between them using multicast or unicast. In the last case the cluster communicates its members to each other using entries in the database.

RMI and staging/live

Images

Templating taglib

Pluggable security

Modularity

MMBase is several ways highly modular

Builders

Define the possible object types (builders) that can be use in the current MMBase instance

Applications

Define a collection of 'needed builders', 'needed relations' and bootstrap data for those.

Components

A component defines as set blocks of templated data.

Functions

Functions basically wraps any peace of functionality, and makes it available in templating.

Modules

Other projects hosted at github.com/mmbase

Originally at the subversion server at scm.mmbase.org

CMS Container: Developed by Finalist IT Group. It used to be used by a variety of web sites, I think mainly of municipalities and such

Didactor: An E-learning environment. Originally mainly developed by Johannes I think, and later by Henk

Template Engine: Used at VPRO, developed mainly by Kees

NatuurMonumenten: A CMS ('LeoCMS', referring to, I think, the municipality of Leeuwarden) Originally developed by Henk.

mmweb: The original MMBase.org site, using MMBase itself

Forked because dissappeared themselves

A-Select: A single sign on system, which MMBase (the 'aselect sub project') had support for

kupu: A rich text editor, which MMBase (the 'richtext sub project') had support for

Sites still running on MMBase

The most noticeable one is:

open beelden (source)

There might be more?

This page

This page is hosted at github pages, so currently are just static pages. We’re using adoc. The original documentation of MMBase was in Asciidoc XML’s, I’ll try to get them published here too somehow.

Issue management

MMBase-issues used to be hosted in a JIRA installation on the MMBase Server. We lost the database but IIRC it wasn’t very functional any more, because the installation was very much out dated.

Plans for the future

May be it is interesting to put some stuff in docker images to simply have a running MMBase 1.9, so we can see how it was like.

As I recall the taglib-documentation was quite nice, but was generated on the fly with JSP’s. May we we should do something about that and copy a version to github pages too

build the stuff from mmbase/documentation and publish somewhere below here

TAGS:MMBase The Content System

<<< Thank you for your visit >>>

Websites to related :
Grands Thermes de La Bourboule

   Aller au contenu Besoin d'un conseil ? 04 73 81 21 00

The Sailfish - Beautiful Emerald

   The Sailfish - Beautiful Emerald Isle, NC; (Please scroll down for Information) The Sailfish is a private beach house for rent

Donna Hemans, Author River Woman

   #DrpDwnMn0:not([data-screen-in-hide="done"]){opacity:0}#ScrnWdthCntnr0-13jg:not([data-screen-in-hide="done"]){opacity:0}:root{--color_

Marry Cooking &#8211; Bringing t

   HomeOver onsMarryCookingBlogContact MenuMenu FacebookInstagram Welkom bij Marry CookingBringing the best

From the Front Porch

   Home Episodes

Armasight &#8211; Night Vision,

  HomeAboutProductsNight VisionThe PVS-14The MNVDThe BNVDThe Vulcan 4.5x Rifle ScopeThe CO-MiniThe CO-LRThe 3x Lens for PVS-14The 6x Lens for PVS-14Ther

Order a Free Dosing Device - Ide

  Order a Free Dosing Device - Ideal for the Perfect Wash!Skip to contentWelcome toDosing Device CenterOrder your free liquid or powder laundry dosing d

Welcome to Super Bird Toy Store

   Hello, Guest!LoginShopping Bag0 Item(s) in cart /Total: $0View CartItemsQty.PriceSubtotal:View CartCheckout0 ItemsToggle navigationHomeWhat's New?My

U.S. Specialty Cheese Gallery |

   Skip to ContentSkip to Navigation MEMBERS, SUPPLIERS العربية Tiếng Việt 한국어 中文 Espa&ntil

Cave Bernard Gauthey Vigneron-en

   ACCUEILDOMAINECAVEAUBOUTIQUE VINSDISTINCTIONSGALERIENEWSContacts0(&#67;&#72;&#70;0.00) CloseACCUEILDOMAINECAVEAUBOUTIQUE VI

ads

Hot Websites