MMBase
Homepage / Roadmap - bugs / Projects

Persons

Michiel Meeuwissen (project leader)

André van Toly

Henk Hangyi

Nico Klasens

Ernst Bunders

Pierre van Rooden

Johannes Verelst

Daniel Ockeloen

Henk Hangyi

Attachments

word doc An MMBase Component Framework
Initial draft (v0.2, 24-05-2006) and discussion document describing the framework, by Johannes Verelst

pdf Presentation Component Framework
Presentation about the MMCF by André van Toly done during the MMBase Annual Meeting, 14th December 2006.

pdf Presentation MMCF @ MMEvent 2007
6 dec 2007 - An english translation was posted to the developers list.

word doc First draft (v0.9) projectplan
Project description MMBase Component Framework (Word)

pdf First draft (v0.9) projectplan
Project description MMBase Component Framework (PDF)

pdf Draft component framework docume

Urls

Demo MMCF webapplication
6 dec 2007 - Demo webapplication of MMBase 1.9 with the MMBase Component Framework. Put the directory 'mmbase19' in the webapp directory, restart your server and start browsing the webapp at http://localhost:8080/mmbase19/

Component Framework coding weekend / October 2006
News article about the coding 'weekend'.

Component Framework documentation
Documentation describing the MMBase component framework its configuration and the deployment of a 'Hello World!' example.

Documentation

Notes of second MMCF projectmeeting (30/08/2006)

MMBase Component Framework

Project goal is to deliver a formal specification of a Framework API and a Component API, which allows MMBase-compliant components to be written in a way that allows them to run in a multitude of different frameworks.

In contrary maybe to its activity at the projects webpage http://www.mmbase.org/mmcf the MMCF is still active. The past year the MMBase Framework has grown into a rather stable framework. We have already run some of its components in the CMSContainer (CMSC), in EO's MMBase environment Patmos and in a default MMBase distro.

What was MMCF again? Main goal was to create an application framework for MMBase. Or rather, an interface to build your own framework for your MMBase environment. MMCF should provide classes to build upon to make MMBase components run without modification, for instance a poll, an email application, any application.

There is no need to implement your own framework if you don't have one already. The default reference implementation of the framework that will be included with the MMBase 1.9 distro will be fully functional. Only when you already have a MMBase site and you are planning to upgrade to 1.9 AND wish to use components - you can use MMBase without them - you may need to implement the interfaces to create your own version of a framework. We suspect that in a lot of cases your own implementation of the framework is not necessary. Only in rather large MMBase implementations of MMBase, like the CMSC and Didactor, it will be needed.

What does it do now? Maybe its easier to start this explanation with the MMCF configuration. MMCF adds a new directory to the config directory: components. This is were the component configuration files go, like for example poll.xml, stating the 'blocks' a component consists of. Within these files you also control a components settings.
Besides that MMCF adds a config file named 'framework.xml' to the root of the config directory. Currently that one only consists of settings that are used by the default MMBase framework implementation.

The MMCF uses UrlConverters to direct you to a component with nice looking links. For example the MyNews application is rewritten from an application (which it of course still is) to a component and uses UrlConverter to create links to its articles. These UrlConverters are also configured in framework.xml, the MyNews one is named MyNewsUrlConverter and shows the MyNews magazine at http://127.0.0.1:8080/magazine.

What are components? A components consist of at least one block. The poll application for example has three:

What have we accomplished until now? The default reference implementation of the MMCF is more or less stable. Since the last demonstration of the MMCF at the VPRO in november last year a lot has been added. There still remains a lot to be done. All of the development is done by a few very busy developers in their spare time, so it is not going very fast...

What is still needed?

We especially encourage developers who wish to implement applications within MMBase, of have MMBase applications, to join and test there applications against the new framework. Since you have made to the end of this rather long e-mail, you must be interested. So, please join our efforts and keep an eye on this list for an upcoming weekend or coding days.