SpagoBI Configuration

This section describes the configuration procedure for SpagoBI 3 and later. For older versions, please check here. 

Engines Configuration

All Engines have a default configuration at startup.

You can manually edit engines configuration via the Engines Management functionality under the Resources menu in SpagoBI homepage.


In this list you can find one instance of each engine type.
Using the editor you can modify engine configuration as follows:

  • edit the URL of external engines, in case you installed that engine in a diferent server.
  • create a duplicate instance of an engine to balance load.

There are 2 types of engines: 

  • Internal: installed within /SpagoBI context
  • External: installed within a specific context (e.g., /SpagoBIJPivot )

For each type of engine the administrator can set:

  • label
  • name
  • description
  • document type: predefined list of document types that can be implemented using the engine
  • engine type: external or internal
  • Data Set: if this option is enabled, any analytical document of this type can be associated to a dataset from the document detail page
  • Data Source: if this option is enabled, any analytical document of this type can be associated to a data source from the document detail page

Details about the configuration process for each engine are provided below.

Internal Engines

In this case you only need to set the implementation class.


External Engines

In this case you need to set:

  • URL: the URL used by browser to call the Engine
  • Driver: the implementation class of specific driver


Summary of engine configuration options


NameData SetData SourceClass
 Dashboard X  it.eng.spagobi.engines.dashboard.SpagoBIDashboardInternalEngine
 Chart X  it.eng.spagobi.engines.chart.SpagoBIChartInternalEngine
 Dossier X  it.eng.spagobi.engines.dossier.SpagoBIDossierInternalEngine
 Office Document   it.eng.spagobi.engines.officedocument.SpagoBIOfficeDocumentInternalEngine
 Document Composition   it.eng.spagobi.engines.documentcomposition.SpagoBIDocumentCompositionInternalEngine
 Kpi X  it.eng.spagobi.engines.kpi.SpagoBIKpiInternalEngine


Name Data Set Data Source DriverURL
 Birt X X it.eng.spagobi.engines.drivers.birt.BirtReportDriver /SpagoBIBirtReportEngine/BirtReportServlet
 Geo X  it.eng.spagobi.engines.drivers.geo.GeoDriver /SpagoBIGeoEngine/servlet/AdapterHTTP
 JPivot  X  
 JPalo  X  
 JasperReport X X it.eng.spagobi.engines.drivers.jasperreport.JasperReportDriver /SpagoBIJasperReportEngine/JasperReportServlet
 QBE  X it.eng.spagobi.engines.drivers.qbe.QbeDriver /SpagoBIQbeEngine/servlet/AdapterHTTP
Talend   it.eng.spagobi.engines.drivers.talend.TalendDriver /SpagoBITalendEngine/JobRunService
 Weka   it.eng.spagobi.engines.drivers.weka.WekaDriver /SpagoBIWekaEngine/WekaServlet
Worksheet Engine  X it.eng.spagobi.engines.drivers.worksheet.WorksheetDriver /SpagoBIQbeEngine/servlet/AdapterHTTP
ConsoleEngine X  it.eng.spagobi.engines.drivers.console.ConsoleDriver /SpagoBIConsoleEngine/servlet/AdapterHTTP?ACTION_NAME=
 GeoReportEngine X  it.eng.spagobi.engines.drivers.generic.GenericDriver /SpagoBIGeoReportEngine/GeoReportEngineStartAction
 Accessibility Engine X  it.eng.spagobi.engines.drivers.accessibility.AccessibilityDriver /SpagoBIAccessibilityEngine/servlet/AccessibilityServlet
 SmartFilterEngine  X it.eng.spagobi.engines.drivers.smartfilter.SmartFilterDriver /SpagoBIQbeEngine/servlet/AdapterHTTP

Data Source Configuration

SpagoBI administrator must configure every DB connection used in documents under Resource -> Engines Management.
Once defined, these connections can be used in Analitical Documents.



There are two different options to configure the connection to a DB:

  • Use JNDI
    This is the recommended way, but you must configure JNDI resource in your Application Server.
    For example in Tomcat you have to define Connection Pool in server.xml and add a resource link in every Context.
  • Use JDBC
    In this case SpagoBI create a new connection for every document execution, remember to insert JDBC Driver Library in your System.

After that, you can TEST your connection using button {Test.png|document=spagobi_server.image}

The result should be:


SpagoBI Configuration

This section describes how to configure different options for SpagoBI.


Each WebApplication uses Log4J to log debug and error information.

You can adjust the logging verbosity level by editing the following file:


There are four possible logging levels:

  • WARN
  • INFO

Note: for more information about log4j configuration []

Each WebApplication writes its log file under TOMCAT_HOME/logs. This option can be changed if needed.

SpagoBI uses Spago as J2EE Application Framewor. Spago has a specific logging system that gets redirected in log4j. Hence, if you want to debug Spago, you will need to change the Spago Log Level at TOMCAT_HOME/webapps/SpagoBI/WEB-INF/conf/config/tracing.xml

<LOGGER isDefault="true" name="Spago" class="it.eng.spago.tracing.Log4JLogger">
 <CONFIG trace_min_log_severity="0" debug="false"  append="true" trace_thread_name="false" />

Simply set debug="true" and debug for Spago will be enabled.

Mail Server

SpagoBI uses 3 mail profiles

  • scheduler: used by SpagoBI Scheduler
  • user: used to send documents by e-mail
  • kpi_alarm: used to send alarms

These profiles can be configured via Tools -> Manages Configurations:


In order to configure mail profiles, select MAIL in the filter bar and you will be shown the mail profiles.

Below the parameters that can be configure for each mail profile:

MAIL.PROFILES.scheduler.smtphost="" v


MAIL.PROFILES.kpi_alarm.from" name=""
MAIL.PROFILES.kpi_alarm.user" name=""


It is compulsory to properly configure the type of DBMS used by SpagoBI. This is done by editing the hibernate.cfg.xml file and setting the proper Hibernate , as shown below.

       <property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property>
        <property name="hibernate.dialect">org.hibernate.dialect.SQLServerDialect</property>
        <property name="hibernate.dialect">org.hibernate.dialect.PostgreSQLDialect</property>
        <property name="hibernate.dialect">org.hibernate.dialect.Oracle9Dialect</property>
        <property name="hibernate.dialect">org.hibernate.dialect.IngresDialect</property>
        <property name="hibernate.dialect">org.hibernate.dialect.HSQLDialect</property>
        <property name="hibernate.dialect">org.hibernate.dialect.DB2400Dialect</property>

If you are using the SpagoBIWorkflowEngine, you also need to configure the Hibernate dialect for JBPM workflow engine. This can be done by editing apache-tomcat-6.0.18/webapps/SpagoBI/WEB-INF/classes/jbpm.cfg.xml
As shwon below, this file contains a reference to JBPM hibernate file:
<string name='resource.hibernate.cfg.xml' value='jbpm.hibernate.cfg.xml' />

In case your file reads jbpm.hibernate.cfg.hsql.xml instead of jbpm.hibernate.cfg.xml: jbpm.hibernate.cfg.hsql.xml is the hibernate file suitable for HSQLDB; if you are not using HSQLDB change resource.hibernate.cfg.xml property to jbpm.hibernate.cfg.xml, then edit  apache-tomcat-6.0.18/webapps/SpagoBI/WEB-INF/classes/jbpm.hibernate.cfg.xml and change

<property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property>
according to your database server.

Finally, in case you are using SpagoBI Scheduler, you need to configure the Quartz scheduler engine by editing apache-tomcat-6.0.18/webapps/SpagoBI/WEB-INF/classes/

The file looks similar to what is shown below:

# job store delegate class -
# Hsqldb delegate class

# Mysql/Ingres delegate class

# Postgres delegate class

# Oracle delegate class

Simply uncomment the job store delegate class suitable to your database server and comment all others.

Database schema

SpagoBI metadata repository (DB tables) should reside in the default schema of the user using the JDBC connection.

In case this is not possible, you should edit hibernate.cfg.xml by adding the following line:
<property name="hibernate.default_schema"><name of the schema></property>

- modify SpagoBI/WEB-INF/classes/jbpm.hibernate.cfg.xml by adding the following line:
<property name="hibernate.default_schema"><name of the schema></property>

- modify SpagoBI/WEB-INF/classes/ by adding the following line:
org.quartz.jobStore.tablePrefix=<name of the schema>.qrtz_

- modify the queries inside SpagoBI/WEB-INF/conf/config/statements.xml adding the schema before tables' names.

Maximum file size

You can set different values via Tools -> Manages Configurations. To set a different maximum file size, change the following property of GENERIC_CONFIGURATION Category


Date Format

It is possible to customize the date format displayed by SpagoBI drivers. The date format depends in general on the LOCALE options.

You can configure it via Tools -> Manages Configurations by editing the following properties of the DATE-FORMAT Category

SPAGOBI.TIMESTAMP-FORMAT.format="dd/MM/yyyy hh:mm:ss"

Note that these formats only affect formats of dates shown in documents parameter selection. The format of dates actually passed to SpagoBI reports (as parameters values) do not depend on the LOCALE.


SpagoBI supports Java standard i18n. Each user can choose the preferred language. The default language is read from the browser.
You can set different language supported via Tools -> Manages Configurations by changing the following properties of the LANGUAGE_SUPPORTED Category



Context name

You can change the context name via Tools -> Manages Configurations by changing this property of GENERIC_CONFIGURATION Category


JNDI name

You can change the JNDI names used to lookup environment variables via Tools -> Manages Configurations by changing the following properties of the GENERIC_CONFIGURATION Category


Note that these properties are valid only within SpagoBI core project.

In addition, each External Engine has engine-config.xml where you can change some JNDI names such as:


We recommend to chane these names only in case you have trouble with your Application Server

SpagoBI Installation as a portal application

You can install SpagoBI as simple WebApplication or in Portal Environment via Tools -> Manages Configurations by changing the SPAGOBI.SPAGOBI-MODE property of theGENERIC_CONFIGURATION Category


SpagoBI 2.0 is distributed as Web Application by default.

In case you wish to install as a portal, you will need to:

  • Modify security connector ( read next paragraph )
  • Comment inizializer in TOMCAT_HOME/webapp/SpagoBI/WEB-INF/conf/config/initializer.xml
  • <! Start Initializer to enable when running in web mode  >
    <INITIALIZER class="" config="" />
    <INITIALIZER class="it.eng.spagobi.init.TreeInitializer" config="SPAGOBI.TREE_INITIALIZATION" />
    <! End Initializer to enable when running in web mode  >
  • Uncomment listner in TOMCAT_HOME/webapp/SpagoBI/WEB-INF/web.xml
      eXo platform uses this listener. If you are using another portal you will need to insert other specific configurations.
      You may have problems with classloader and missing libraries, depending on the portal.
Created by Angelo Bernabei on 2011/06/16 15:36
Last modified by Alberto Ghedin on 2014/07/29 12:08

This wiki is licensed under a Creative Commons 2.0 license
XWiki Enterprise 2.7.33694 - Documentation