The installation of openMAINT requires that you have already installed these basic products:


  • PostgreSQL database (it must be started and accessible)
  • Tomcat application server (not to be started)
  • the DMS Alfresco
  • the Java environment

    Warning: you must to be careful to use directories not containing spaces within the entire path.

    Then you start the PostgreSQL service and possibly (but it is not mandatory) the Alfresco service.

    After completion of this operations, the installation the standard openMAINT is very simple:

    • download the compressed file (ZIP file) corresponding to the last version released
    • copy the libraries in extras/tomcat-libs, for the Tomcat version you  will be installing CMDBuild in, to the Tomcat "libs" directory (as  written in the INSTALL.txt file present in that folder)
    • copy the libraries in scheduler/tomcat-libs to the Tomcat "libs" directory
    • copy openmaint-{version}.war in the Tomcat "webapps" directory, renaming it to openmaint.war
    • copy cmdbuild-shark-server-{version}.war in the Tomcat "webapps" directory, renaming it to shark.war
    • create a new database in your PostgreSQL installation, then restore one of the databases in the database folder
    • start the Tomcat application server
    • start the application and set the following parameters in the Configuration form
      • CMDBuild Database Type: Existing
      • CMDBuild Database name: the name of the database that you have just  created
    • log in the application using one of the provided sample
      • users user with administrator privileges Username: admin - Password: admin
      • user without administrator privileges - Username: demouser - Password: demo
    • go to Administration -> Setup -> Workflow and set "Enabled" = true and fill the "Server URL" field with the URL of shark (e.g. http://localhost:8080/shark)
    • stop the Tomcat application server
    • go to webapps and remove the files openmaint.war and shark.war
    • go to weapps/shark/META-INF/context.xml and change the database name from ${cmdbuild} to the name that you gave to your database
    • go to weapps/shark/conf/Shark.conf and set the parameter "" with the url of your openmaint application (e.g. http://localhost:8080/openmaint)
    • restart the Tomcat application server 

    Please refer to the Technical Manual of CMDBuild for further details.

    The basic configuration is done using a few setup pages that openMAINT presents automatically at the first use.

    To access the setup pages you need only to connect using your browser at http://localhost:8080/openmaint (the address may vary depending on the Tomcat configuration).

    From here you can configure:

    The download file contains everything you need, including CMDBuild components on which openMAINT is based.

    openMAINT only works with the PostgreSQL ( ) database, not just because it is the most advanced open source database but also because it is able to work natively with the hierarchies of "superclass" and "classes" implemented in openMAINT (eg.  Inventory Item => Asset => Device => Electrical device => Electric power unit, Inventory Item => Asset => Device => Furnishing => Table, Contract => Site contract => Rent, Stakeholder => Company Stakeholder => Person), sharing the basic attributes and relationships and specializing the typical attributes.

    The PostgreSQL SQL language accepts commands such as "create table x inherits y" and openMAINT widely uses this feature to model its DB in "object oriented" way.

    The porting to other databases would be a very costly activity.
    It is not just to rewrite the persistence layer, which is currently based on functions and trigger system of PostgreSQL, but also to implement a module that simulates the mechanism of "inheritance" of tables.

    If PostgreSQL is not included in your IT standards, you can consider PostgreSQL as a component "embedded" in openMAINT and manage it using the assistance of the Tecnoteca technicians.

    Yes, using and configuring the Task Manager in the Administration Module.

    Yes, these are lookup lists, editable in the Administration Module.

    openMAINT is a native multilanguage application.

    Two different levels of localization are available:

    1)  Localization of interface elements: standard menu, buttons, page titles and TAB labels, header and footer of the application, administration interface, etc.

    2)  Localization of the full application: data model (classes names, attributes names, domains names and descriptions, lookup names), reports names, navigation menu, etc.. This localization level of openMAINT can be made in the Administration Module - menu item called “Localization”. There is a simplified centralized interface that allows the users to operate having all the texts of the localization elements in just one page.
    It is also possible to export and import the localization in the CSV format in one or more languages.

    For more information please refer to the CMDBuild Administration Manual - Localization chapter.


    Tecnoteca collects and provides, in the standard release, the first level localization supplied by the contributors. Check here what are the languages already available for the base interface of openMAINT.

    Tecnoteca provides the second level localizations in English and Italian, suppling a repository for additional languages for openMAINT.


    If you want to translate the first level of openMAIN please refer to this instructions.

    If you want to translate the second level of openMAINT you can fill-in the fields in the Localization menu in the Administration Module. Or you can directly download the CSV file (you find it here for your convenience), work locally in your PC and re-import the file complete with the localization.

    Then you can send us the CSV file to be included in the next release along with your name and organization (if you want) to be listed in the README file as a contributor. You will also receive a nice gadget.