Home > Installation
Configuration principale (fichier ebx.properties)
Le fichier ebx.properties centralise la configuration globale de EBX.Platform. La définition de son chemin d’accès est détaillée dans la section "Comment faire référence au fichier de configuration ebx.properties ?" .
- Activation de licence (numéro de licence)
- Activation du Workflow
- Répertoire ebx_home
- Répertoire racine
- Gestion des fichiers temporaires
- Persistance du référentiel EBX.Platform
- Annuaire des utilisateurs
- Logs
- Configuration de la messagerie
- Identification du site de déploiement
- Rechargement à chaud de la configuration
- Applications utilisant le moteur de navigation EBX.Platform
- Mode de fonctionnement
- Filtrage de ressources
- Calcul des URLs
- Mode Proxy
- Mode Reverse Proxy
- Tuning
Activation de licence (numéro de licence)
#################################################
## EBX.Platform License number
## (as specified by your license agreement)
#################################################
ebx.license=paste_here_your_license_key
Activation du Workflow
Ce paramètre permet d'indiquer si le Workflow est activé. Ce paramètre n'est pas repris à chaud. Le serveur doit être redémarré suite à modification.
#################################################
## Workflow activation.
## Default is false.
#################################################
ebx.workflow.activation = true
Répertoire ebx_home
Ce paramètre permet d'indiquer le chemin d'accès au répertoire ebx_home. Par défaut, EBX.Platform utilise la variable d'environnement définie dans les propriétés système (voir le chapitre Déploiement sur des serveurs d'application J2EE ).
## 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=
Répertoire racine
Ce répertoire contient les archives, les fichiers de la piste d'audit ainsi que les fichiers HSQLDB (quand le référentiel utilise ce serveur en mode standalone).
#################################################
## Path for EBX.Platform XML repository
#################################################
ebx.repository.directory=${ebx.home}/ebxRepository
Gestion des fichiers temporaires
Les fichiers temporaires sont stockés dans le répertoire défini comme suit :
# 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
Persistance du référentiel EBX.Platform
Le référentiel EBX.Platform est basé sur un des systèmes de persistance suivants : H2 (défaut), HSQLDB, Oracle DB, IBM DB2, PostgreSQL ou SQL Server.
La bibliothèque (pilote) nécessaire à l'utilisation de chaque base de données est décrite dans le chapitre Composants .
################################################################
## 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 H2 'standalone'.
################################################################
ebx.persistence.factory=h2.standalone
ebx.persistence.user=xxxxxxxxx
ebx.persistence.password=yyyyyyyy
################################################################
## Case EBX.Platform persistence system is H2 'server mode',
##
## If Hs2 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=h2.server
ebx.persistence.url=jdbc:h2:tcp://127.0.0.1/ebxdb
ebx.persistence.user=xxxxxxxxx
ebx.persistence.password=yyyyyyyy
################################################################
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
Annuaire des utilisateurs
Ce paramètre spécifie le nom de la classe Java qui construit l'annuaire spécifique. Il ne doit être défini que si l'annuaire par défaut de EBX.Platform n'est pas utilisé. Pour plus d'informations, voir le chapitre Annuaire ainsi que la Javadoc de la classe 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
Les catégories Log4J les plus importantes sont les suivantes :
-
La catégorie
ebx.log4j.category.log.kernelaffiche les caractéristiques principales de EBX.Platform, les processus d'initialisation et les exceptions. -
La catégorie
ebx.log4j.category.log.workflowaffiche les caractéristiques principales, les avertissements et les exceptions concernant le workflow. -
La catégorie
ebx.log4j.category.log.setupaffiche le résultat de validation et de compilation de tous les objets de EBX.Platform. -
La catégorie
ebx.log4j.category.log.d3affiche les événements D3 de EBX.Platform. -
La catégorie
ebx.log4j.category.log.dataservicesaffiche les événements Data Services de EBX.Platform. -
La catégorie
ebx.log4j.category.log.monitoringaffiche les logs brutes issues du monitoring . -
La catégorie
ebx.log4j.category.log.requestaffiche la stratégie d'optimisation choisie lors de l'exécution de chaque requête sur les tables d'EBX.Platform.
#################################################
## 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
ebx.log4j.category.log.monitoring= INFO,
ebxFile:monitoring
ebx.log4j.category.log.dataServices = INFO, ebxFile:dataServices
ebx.log4j.category.log.d3= INFO, ebxFile:d3
ebx.log4j.category.log.request= INFO, ebxFile:request
Configuration de la messagerie
EBX.Platform peut activer ou non la messagerie. Entre autres, elle est utilisée par EBX.Manager pour informer l’administrateur de changements sur les accords et sur les acteurs.
Ces propriétés sont indépendantes de la configuration des logs (envoi de mail basé sur la librairie log4j).
#################################################
## 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=
Identification du site de déploiement
Le paramètre suivant permet d'identifier le site de déploiement pour l’envoi des messages de logs techniques.
#################################################
## Unique Site Name
## --> used by monitoring mails and by repository
#################################################
ebx.site.name= name@domain.com
Rechargement à chaud de la configuration
Certains paramètres peuvent être rechargés dynamiquement sans avoir à réinitialiser EBX.Platform. Le paramètre ‘thisfile.checks.intervalInSeconds’ indique l'intervalle de temps entre chaque vérification du fichier ebx.properties.
#################################################
### Checks if this file has been updated
### If value <= 0, no more checks will be done
#################################################
thisfile.checks.intervalInSeconds=1
En développement, ce paramètre peut être positionné à 1 seconde pour des questions de réactivité. Sur un site de production où les changements de configuration sont moins fréquents, cette valeur peut être plus élevée ou bien être mise à zéro pour empêcher toute reprise à chaud de changements.
Cette propriété n’est pas toujours opérationnelle lorsque le module est déployé en mode WAR (cela dépend du serveur d’applications).
Applications utilisant le moteur de navigation EBX.Platform
Ne sont concernées par ces propriétés que les applications Web qui utilisent le moteur interne de navigation EBX.Platform. EBX.Manager en fait partie.
Rafraîchissement des maquettes des applications:
#################################################
## 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
Mode debug dans les pages web des modules EBX.Platform (à utiliser uniquement lors de développement) :
#################################################
## End-User Debug Mode
## (default for all EBX.Platform modules ).
## Debug information appears on end-user web page.
#################################################
frontEnd.debugMode=false
Mode de fonctionnement
Cette propriété définit le mode de fonctionnement de EBX.Platform. Lorsque le mode de fonctionnement est défini à développement, l' assistant développeur est activé dans EBX.Manager et des informations techniques supplémentaires sont affichées ; excepté pour l'administrateur qui voit toutes ses informations quelque soit le mode de fonctionnement. Ces informations sont les suivantes :
-
Panneau de documentation : dans le cas d'une valeur calculée, le nom de la classe Java est affiché. L'assistant d'accès à un noeud d'adaptation est aussi affiché.
-
DMA : les informations techniques du modèle et certaines options sont disponibles (Services, Règles et objets métier, "Bindings" du modèle, certaines propriétés avancées).
-
Rapport de validation : l'onglet validation est disponible.
#################################################
## Server Mode
## Value must be one of: development, integration, production
## Default is production.
#################################################
backend.mode=integration
Filtrage de ressources
Cette propriété permet de filtrer un certain nombre de fichiers et répertoires dans le contenu des répertoires de ressources (nœud de type ressource, avec une facette associée indiquant le répertoire contenant les ressources utilisables).
#################################################
## 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/*:
Calcul des URLs
Par défaut, EBX.Platform fonctionne en mode « standalone » : les ressources externes (images, javascripts, etc.) sont fournies par le serveur d’application.
Par défaut, les paramètres du fichier ebx.properties, portant sur les URLs, n’ont pas besoin d’être renseignés.
Dans ce cas, le nom du serveur et le port sont déduits de la requête initiale (pour l'outil EBX.Manager).
##################################################################
## 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=
Mode Proxy
Le mode proxy permet d'utiliser un serveur HTTP en frontal pour fournir les ressources statiques (images, css, javascripts, etc.). Cette architecture a pour avantage de décharger le serveur d'applications des requêtes HTTP statiques. Cette configuration permet également de prendre en charge la sécurité SSL au niveau du serveur frontal.
Le serveur Web transmet les requêtes vers le serveur d’applications en fonction d’un chemin présent dans l’URL.
Ce chemin ‘servletAlias’ est décrit dans les propriétés d’ebx.properties.
Le serveur Web fournit toutes les ressources externes. Ces dernières sont mises dans un répertoire dédié, accessible par le chemin ‘resourcesAlias’.
De plus, EBX.Platform doit pouvoir accéder par le système de fichiers aux ressources externes (lors de la compilation du modèle de données et des adaptations). Pour cela, il faut renseigner la propriété ebx.webapps.directory.externalResources .
Le fichier ebx.properties peut être configuré comme suit :
#################################################
## 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
Mode Reverse Proxy
Les URLs générées par EBX.Platform pour les requêtes et les ressources externes doivent contenir un nom de serveur, un numéro de port et un préfixe de chemin spécifiques.
Le fichier ebx.properties peut être configuré comme suit :
#################################################
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
Il est possible de préciser certains paramètres afin d'optimiser l'utilisation mémoire.
Le fichier ebx.properties peut être configuré comme suit :
################################################################
## 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