Home > Installation
Main Configuration (ebx.properties file)
The file ebx.properties centralizes configuration for EBX.Platform. The definition of its access path is detailed in the section "How to specify the path to ebx.properties configuration file?".
License activation (license key)
#################################################
## EBX.Platform License number
## (as specified by your license agreement)
#################################################
ebx.license=paste_here_your_license_key
Workflow activation
This parameter specifies whether the workflow is activated. This parameter is not taken into account on the fly. The server must be restarted when the value changes.
#################################################
## Workflow activation.
## Default is false.
#################################################
ebx.workflow.activation = true
ebx_home directory
This parameter specifies the access path to the ebx_home directory. By default, EBX.Platform uses the environment variable defined in the system properties (see chapter Deploy on J2EE Application Servers ).
## This property is used later in this file (see
"${ebx.home}")
## It is not required otherwise by EBX.Platform.
## (as stated above "${ebx.home}" will first look on system
properties
## so this assignment provides a default value)
ebx.home=
Root directory
This directory contains the archives, the audit trail and HSQLDB server files (when the repository is using this server in standalone mode).
#################################################
## Path for EBX.Platform XML repository
#################################################
ebx.repository.directory=${ebx.home}/ebxRepository
Handling temporary files
Temporary files are stored such as:
# The property ebx.temp.directory allows to specify a directory
for temporary files.
# Default value is java.io.tmpdir
#
ebx.temp.directory = ${java.io.tmpdir}
#ebx.temp.directory = /tmp/java
EBX.Platform Repository Preloading
This parameter specifies whether the Reference branch of the repository shall be preloaded at server startup.
######################################################
## Specifies whether the Reference branch of the repository shall be
preloaded at server startup.
## Value must be one of: true, false
## Default value is true.
######################################################
#ebx.repository.preload=false
EBX.Platform Repository Persistence
EBX.Platform repository uses one of the following persistence layers: HSQLDB (default), Oracle DB, IBM DB2, PostgreSQL or SQL Server.
Required library (driver) for each database is described in chapter Components.
################################################################
## The maximum time to set up the database connection,
## in milliseconds.
################################################################
ebx.persistence.timeout=10000
################################################################
## The prefix to add to all table names of persistence system.
## This may be useful for supporting multiple repositories in relational database.
## Default value is EBX_
################################################################
ebx.persistence.table.prefix=
################################################################
## Case EBX.Platform persistence system is Hsqldb 'standalone'.
################################################################
ebx.persistence.factory=hsql.standalone
ebx.persistence.user=xxxxxxxxx
ebx.persistence.password=yyyyyyyy
################################################################
## Case EBX.Platform persistence system is Hsqldb 'server mode',
##
## If Hsqldb is declared as JNDI data source in your application server,
only ebx.persistence.factory is necessary,
## but ebx.persistence.url, ebx.persistence.user and
ebx.persistence.password must be removed.
################################################################
ebx.persistence.factory=hsql.server
ebx.persistence.url=jdbc:hsqldb:hsql://127.0.0.1/ebxDatabase
ebx.persistence.user=xxxxxxxxx
ebx.persistence.password=yyyyyyyy
################################################################
## Case EBX.Platform persistence system is Oracle
##
## If Oracle is declared as JNDI data source in your application server,
only ebx.persistence.factory is necessary,
## but ebx.persistence.url, ebx.persistence.driver, ebx.persistence.user
and ebx.persistence.password must be removed.
################################################################
ebx.persistence.factory=oracle
ebx.persistence.url=jdbc:oracle:thin:@127.0.0.1:1521:ebxDatabase
ebx.persistence.driver=oracle.jdbc.OracleDriver
ebx.persistence.user=xxxxxxxxx
ebx.persistence.password=yyyyyyyy
################################################################
## Case EBX.Platform persistence system is IBM DB2.
##
## If DB2 is declared as JNDI data source in your application server,
only ebx.persistence.factory is necessary,
## but ebx.persistence.url, ebx.persistence.driver, ebx.persistence.user
and ebx.persistence.password must be removed.
################################################################
ebx.persistence.factory=db2
ebx.persistence.url=jdbc:db2://127.0.0.1:50000/ebxDatabase
ebx.persistence.driver=com.ibm.db2.jcc.DB2Driver
ebx.persistence.user=xxxxxxxxx
ebx.persistence.password=yyyyyyyy
################################################################
## Case EBX.Platform persistence system is Microsoft SQL Server.
##
## If sqlserver is declared as JNDI data source in your application
server, only ebx.persistence.factory is necessary,
## but ebx.persistence.url, ebx.persistence.driver, ebx.persistence.user
and ebx.persistence.password must be removed.
################################################################
ebx.persistence.factory=sqlserver
ebx.persistence.url=jdbc:sqlserver://127.0.0.1:1036;databasename=ebxDatabase
ebx.persistence.driver=com.microsoft.sqlserver.jdbc.SQLServerDriver
ebx.persistence.user=xxxxxxxxx
ebx.persistence.password=yyyyyyyy
################################################################
## Case EBX.Platform persistence system is PostgreSQL.
##
## If postgresql is declared as JNDI data source in your application
server, only ebx.persistence.factory is necessary,
## but ebx.persistence.url, ebx.persistence.driver, ebx.persistence.user
and ebx.persistence.password must be removed.
################################################################
ebx.persistence.factory=postgresql
ebx.persistence.url=jdbc:postgresql://127.0.0.1:5432/ebxDatabase
ebx.persistence.driver=org.postgresql.Driver
ebx.persistence.user=xxxxxxxxx
ebx.persistence.password=yyyyyyyy
Users Directory
This parameter specifies the Java directory factory class name. It must be defined only when Default EBX.Platform directory is not used. For more information, see chapter Directory and class DirectoryFactory.
#################################################
## Specifies the Java directory factory class name.
## Value must be the fully qualified name of the Java class.
## The class must extend
com.orchestranetworks.service.directory.DirectoryFactory.
#################################################
#ebx.directory.factory=xxx.yyy.DirectoryFactoryImpl
Logs
The most important logging categories are:
The category
ebx.log4j.category.log.kerneldisplays EBX.Platform main features, processes and exceptions.The category
ebx.log4j.category.log.workflowdisplays main features, warnings and exceptions about workflow.The category
ebx.log4j.category.log.setupdisplays validation and compilation results of all EBX.Platform objects.
#################################################
## Directory of log files
## This property is used by special appender prefixed
## by 'ebxFile:' (see log section below)
#################################################
ebx.logs.directory=${ebx.home}/ebxLog
#################################################
## Log4J properties:
##
## We have some specific syntax extensions:
## - Appender ebxFile:<aFileName>
## Defines a file appender with default settings (threshold=DEBUG)
##
## - property log.defaultConversionPattern is set by Java
#################################################
#ebx.log4j.debug=true #--------------------------------------------------
#ebx.log4j.disableOverride=
#ebx.log4j.disable=
ebx.log4j.rootCategory= INFO
ebx.log4j.category.log.kernel= INFO, Console, ebxFile:kernel, kernelMail
ebx.log4j.category.log.workflow= INFO, ebxFile:workflow
ebx.log4j.category.log.persistence= INFO, ebxFile:persistence
ebx.log4j.category.log.setup= INFO, Console, ebxFile:kernel
ebx.log4j.category.log.mail= INFO, Console, ebxFile:mail
ebx.log4j.category.log.frontEnd= INFO, Console, ebxFile:kernel
ebx.log4j.category.log.frontEnd.incomingRequest= INFO
ebx.log4j.category.log.frontEnd.requestHistory= INFO
ebx.log4j.category.log.frontEnd.UIComponentInput= INFO
ebx.log4j.category.log.fsm= INFO, Console, ebxFile:fsm
ebx.log4j.category.log.fsm.dispatch= INFO
ebx.log4j.category.log.fsm.pageHistory= INFO
ebx.log4j.category.log.wbp= FATAL, Console
ebx.log4j.appender.Console.Threshold = INFO #--------------------------------------------------
ebx.log4j.appender.Console=com.onwbp.org.apache.log4j.ConsoleAppender
ebx.log4j.appender.Console.layout=com.onwbp.org.apache.log4j.PatternLayout
ebx.log4j.appender.Console.layout.ConversionPattern=${log.defaultConversionPattern}
ebx.log4j.appender.kernelMail.Threshold = ERROR
ebx.log4j.appender.kernelMail =
com.onwbp.org.apache.log4j.net.SMTPAppender
ebx.log4j.appender.kernelMail.To = admin@domain.com
ebx.log4j.appender.kernelMail.From = admin${ebx.site.name}
ebx.log4j.appender.kernelMail.SMTPHost = smtp.domain.com
ebx.log4j.appender.kernelMail.Subject = EBX.Platform Error on Site
${ebx.site.name} (VM ${ebx.vm.id})
ebx.log4j.appender.kernelMail.layout.ConversionPattern=**Site
${ebx.site.name} (VM${ebx.vm.id})**%n${log.defaultConversionPattern}
ebx.log4j.appender.kernelMail.layout =
com.onwbp.org.apache.log4j.PatternLayout
Mail configuration
EBX.Platform can activate the mail feature. It is used by EBX.Manager to inform the Administrator about changes on agreements and actors.
Those properties are independent from log configuration (send mail based on the log4J library).
#################################################
## Mail Manager parameters
## activate MailManager (true or false, default false)
## polling interval is in seconds (default is 10)
#################################################
ebx.mail.activate=true
ebx.mail.smtp.host = smtp.domain.com
#ebx.mail.polling.interval = 5
#ebx.mail.smtp.login=
#ebx.mail.smtp.password=
Deployment site identification
This parameter allows you to specify the address for technical log mails.
#################################################
## Unique Site Name
## --> used by monitoring mails and by repository
#################################################
ebx.site.name= name@domain.com
Configuration hot reloading
Some parameters can be dynamically reloaded, without restarting EBX.Platform. The parameter ‘thisfile.checks.intervalInSeconds’ indicates the time interval between each ebx.properties verification.
#################################################
### Checks if this file has been updated
### If value <= 0, no more checks will be done
#################################################
thisfile.checks.intervalInSeconds=1
In development mode, this parameter can be set up to 1 second. On a production site, where changes are less frequent, the value can be greater, or set up to 0 to avoid hot-reloading.
This property is not always operational when the module is deployed as a WAR (this depends on the application server).
Applications that use EBX.Platform navigation engine
Those properties concern Web applications that use EBX.Platform internal navigation engine: mainly EBX.Manager.
Application template reloading:
#################################################
## Reload templates when it is updated
## (default value for all EBX.Platform modules).
## (value can be overrided by each EBX.Platform module.
#################################################
templates.checksIfUpdated=true
Debug mode in the EBX.Platform modules Web pages (use only when developing):
#################################################
## End-User Debug Mode
## (default for all EBX.Platform modules ).
## Debug information appears on end-user web page.
#################################################
frontEnd.debugMode=false
Running mode
This property defines how EBX.Platform runs. The developer assistant is activated in EBX.Manager only in development mode.
#################################################
## Server Mode
## Value must be one of: development, integration, production
## Default is production.
#################################################
backend.mode=integration
Resource filtering
This property allows to filter some files and directories in the resources directories contents (resource type node, with an associated facet that indicates the directory that contains usable resources).
#################################################
## list (separated by comma) of regexps excluding resource
## the regexp must be of type "m:[pattern]:[options]".
## the list can be void
#################################################
ebx.resource.exclude=m:CVS/*:
URLs computing
By default, EBX.Platform runs in "standalone" mode: external resources (images, javascripts, etc.) are then provided by the application server.
By default, URL-related parameters in ebx.properties do not have to be filled.
In this case, the server name and the port are obtained from the initial request (for EBX.Manager tool).
##################################################################
## EBX.Platform FrontServlet: default properties for computing servlet
address
##
## {useLocalUrl}:
## If set to true, servlet address is a "local absolute" URL.
## (that is, a relative URL consisting of an absolute path:
"/path")
## See RFC 2396, http://www.ietf.org/rfc/rfc2396.txt).
## This property is defined once for HTTP and HTTPS.
## Default value is false.
##
## {host}:
## If neither defined nor adapted, retrieves initial request host
## {port}:
## If neither defined nor adapted, retrieves initial request host
## {path}:
## Mandatory, may be empty
##
## Resulting address will be:
## protocol://{host}:{port}/{path}
##
## Each property for HTTP (except {port}) may be inherited from HTTPS
property,
## and reciprocally.
##################################################################
#ebx.servlet.useLocalUrl=true ##################################################################
#ebx.servlet.http.host=
#ebx.servlet.http.port=
ebx.servlet.http.path=ebx/
#ebx.servlet.https.host=
#ebx.servlet.https.port=
#ebx.servlet.https.path=
## External resources: default properties for computing external
resources address
##
## The same rules apply as EBX.Platform FrontServlet properties (see
comments).
##
## Each property may be inherited from EBX.Platform FrontServlet.
##################################################################
#ebx.externalResources.useLocalUrl=true
#ebx.externalResources.http.host=
#ebx.externalResources.http.port=
#ebx.externalResources.http.path=
#ebx.externalResources.https.host=
#ebx.externalResources.https.port=
#ebx.externalResources.https.path=
Proxy Mode
The proxy mode allows to use a front HTTP server to provide static resources (images, css, javascripts, etc.). This architecture reduces the load on the application server for static HTTP requests. In addition, this configuration allows to use SSL security on the front server.
The Web server sends requests to the application server according to a path in the URL.
This ‘servletAlias’ path is specified in ebx.properties.
The Web server provides all external resources. Those resources are stored in a dedicated directory, accessible with the path ‘resourcesAlias’.
In addition, EBX.Platform must be able to access external resources from the file system (at adaptation model and adaptations compilation time). To do so, we should specify the property ebx.webapps.directory.externalResources.
ebx.properties can be configured this way:
#################################################
## Path for external resources if they are not
## delivered within web applications
## This field is mandatory if in proxy mode.
#################################################
ebx.webapps.directory.externalResources=
D:/http/resourcesFolder #################################################
#ebx.servlet.useLocalUrl=true #################################################
#ebx.servlet.http.host=
#ebx.servlet.http.port=
ebx.servlet.http.path= servletAlias
#ebx.servlet.https.host=
#ebx.servlet.https.port=
ebx.servlet.https.path= servletAlias
#ebx.externalResources.useLocalUrl=true
#ebx.externalResources.http.host=
#ebx.externalResources.http.port=
ebx.externalResources.http.path= resourcesAlias
#ebx.externalResources.https.host=
#ebx.externalResources.https.port=
ebx.externalResources.https.path= resourcesAlias
Reverse Proxy Mode
URLs generated by EBX.Platform for requests and external resources must contain a server name, a port number and a specific path prefix.
ebx.properties can be configured this way:
#################################################
ebx.servlet.http.host= reverseDomain #################################################
#ebx.servlet.http.port=
ebx.servlet.http.path=ebx/
ebx.servlet.https.host= reverseDomain
#ebx.servlet.https.port=
ebx.servlet.https.path=ebx/
## Web parameters (for external resources)
## if nothing is set, values are taken from servlet.
#################################################
ebx.externalResources.http.host= reverseDomain
#ebx.externalResources.http.port=
#ebx.externalResources.http.path=ebx/
ebx.externalResources.https.host= reverseDomain
#ebx.externalResources.https.port=
ebx.externalResources.https.path=ebx/
Tuning
Some options can be set so as to enhance the memory space usage.
ebx.properties can be configured this way:
################################################################
## Technical parameters for memory and performance tuning
################################################################
# Import commit
threshold allows to specify the commit threshold
# exclusively for the archive import launched directly from Manager.
#
# For more details about the commit threshold, see the JavaDoc
ProcedureContext.setCommitThreshold().
# Default value is 0.
#
ebx.manager.import.commit.threshold=100
# Validation messages threshold allows to specify the maximum number of
messages to consider
# when performing a validation.
# This threshold is considered for each severity in each validation
report.
# When the threshold is reached:
# - for severities 'error' or 'fatal', the validation is stopped.
# - for severities 'info' or 'warning', the validation continues without
# registering messages beyond the threshold. However the number of
messages
# is still counted and messages of other severities can still be added.
#
# When set to 0 or a negative value the threshold is not considered.
# Default value is 0.
#
ebx.validation.messages.threshold=100
Home > Installation