Table of Contents
List of Tables
We have customers that want web-sites with mmbase/wiab like functionality but with
different design
different content
different security model
different workflow
different purpose
intranet
extranet
internet
different users
We want to make you customers happy and are searching for a way to produce implementations. requirements:
We want to produce implementation in a simple way(for us)
We want to be able to provide support and updates on implementations in a generic way
We want to be able to customize parts of an implementation Like desing of object model
To be flexible we need to be able to replace/enhance parts of a generic application. This can be achived by creating modules and by creating a small core that holds the modules together.
![]() |
A module has the flowing properties
replaceble
extendable
Logic in the form of java class files
Ojbect Model (builders and relations)
dependencies
at object model level
at module level
templates (XMLTemplate JSPTemplate etc..) (with configuration)
front end
jsp template
wap template
template for use externaly (by ohter modules)
edit wizards
special templates
setup template to help install the module
configuration
Table 4.1. defined modules
| module name | module desc | templates | provied services | required services |
|---|---|---|---|---|
| MMCore | Root system | DNS,Storage | ||
| Versioning | provide multiple versions of one node | Storage | ||
| Publishing | publishes nodes to other clouds | |||
| Workflow | guide te user in te process of creating content | Storage | ||
| Security | prevents unauthozied actions | |||
| Content | provides a way to get content items displayed/manages content items | |||
| EditWizard | provides a way to edit parts of object models |
To be able to use different modules and exchange or replace them we need an environement where:
We can configure the core and modules
deploy new implementations
![]() |
![]() |
jsp' (that belong to one module directely call ohter modules)
some jsp's directely make calls to the Object Model
some modules use other modules directely making it imposible to remove/chagne a module
Based on the previous definition of a module a possible object model for a module might be:
![]() |