Wednesday, April 1, 2009

Database settings for user management in the Bonita Console

The user management of the Bonita Console is delegated to the Exo Platform application. Because of that no tables for users and roles are created when initializing the databases of the workflow engine.

Exo Platform has it's own Hibernate connection that creates a database for user management using the HSQLDB database engine. If that solution is not suitable to your needs, it can be reconfigured to use an alternative database engine, just like the Bonita engine.

These are the steps necessary to make that change:

  1. If you haven't done it yet, download and unzip the Nova Bonita Console file (bonita-console-4.1.zip file)
  2. Go to the bonita-console-4.1/webapps folder and delete the folder called portal if it is present. This will help to make sure the Tomcat application will redeploy the modified portal.war file.
  3. Copy the portal.war file to an empty folder in a suitable location.
  4. Open a command prompt/terminal window pointing to the folder were the portal.war file was copied in the previous step.
  5. Extract the contents of the portal.war file. The default JAR utility included with the JDK can be used for this purpose:
    > jar xvf portal.war
  6. Delete the copied portal.war file.
  7. Create a database in your database server for Exo to store the users and roles.
  8. Change the database settings by following the instructions on the following page of Exo's knowledge base. The supported values for the dialect parameter described in section 3 are:
    hsqldb, mysql, mysql-utf8, pgsql, oracle, oracle-oci, mssql, sybase, derby, db2, db2v8
  9. Create a portal.war file with the modified files by using the JAR utility:
    > jar cvf portal.war *
  10. Copy the generated portal.war file to the deploy folder of Tomcat: bonita-console-4.1/webapps
  11. Start the console for the Exo platform to create the necessary tables in the database and populate the default user's and roles.

Alternative Configuration Modes

The Exo platform comes bundled with support for LDAP and Active Directory. If you prefer to use those environments, you will need to follow the instructions in this page in addition to those specified in step 8.

4 comment(s):

  1. Luis Thanks for the article is very clear. But I tried to do to configure a mysql database. The exo perfectly created and filled the tables, but when I try to enter the console, I always said: "Sign in failed. Wrong username or password" and I failed to understand what happens (do not throw any error console).
    Si hablas español por fa avisame, como habrás comprobado mi inglés no es nada bueno y dependo completamente del traductor de google para medio escribir en ese idioma ;)

    ReplyDelete
  2. Hi!

    Sorry for the late answer, I have being a bit away from the net during the last days.

    For this post, I used PostgreSQL but I will give a try with MySQL and I will let you know.

    Regards,
    Luis!

    p.s.: Yes, I speak Spanish. You can see my contact information here: https://forge.ow2.org/users/lsanabria/

    ReplyDelete
  3. Hi : (i'm back :-D)
    I try to connect users from LDAP to the console.
    I follow the tuto you give in the "alternative configuration modes".

    But i have an error which says : Error while unmarshalling (line 43, col 8) java.lang.classnotfoundexception:org.exoplateform.services.ldap.impl.LDAPConfig ....

    i think (but i'm not sure)that i have to modify a class from exoplateform but bonita does not provide sources.
    Do i have to download it without impacting bonita configuration ?
    Is there an other possibility to connect the LDAP with the console ?

    Regards!

    Laura :)

    ReplyDelete
  4. Hi!

    I have not configured the LDAP connectivity myself.

    If it is giving you problems, I think you can find some useful information in the eXo Platform site and perhaps post the question to their forums.

    That functionality is not related to Bonita.

    Regards,
    Luis!

    ReplyDelete