esup-helpdesk




La liste d'utilisateurs n'est pas rendue car vous ne possédez pas les droits d'accès nécessaires pour afficher les profils utilisateur.

Arborescence des pages

Comparaison des versions

Légende

  • Ces lignes ont été ajoutées. Ce mot a été ajouté.
  • Ces lignes ont été supprimées. Ce mot a été supprimé.
  • La mise en forme a été modifiée.
Sommaire

Voir également :

La connexion à la base de données est faite par Hibernate. Les propriétés ci-dessous sont définies dans le fichier /properties/config.properties et utilisées pour renseigner les fichiers /properties/dao/hibernate/hibernate-jdbc.cfg.xml et /properties/dao/hibernate/hibernate-jndi.cfg.xml, ainsi que le fichier conf/server.xml de Tomcat pour les déploiements quick-start.

Avertissement
titleCréation de la base de données

L'application se charge de créer la structure de la base de données, mais la base de données doit exister avant de lancer l'application. C'est à l'exploitant de créer la base et de s'assurer que l'utilisateur déclaré peut créer des structures (tables, champs, ...) et lire/écrire dans la base.

Propriétés propres au SGBD

Pilote

Le pilote de la base de données (par défaut MySql JDBC) :

Bloc de code
#hibernate.connection.driver_class=com.mysql.jdbc.Driver

Pour PostgreSQL :

Bloc de code
hibernate.connection.driver_class=org.postgresql.Driver

Dialecte Hibernate

Le dialecte Hibernate, par défaut InnoDB pour MySql :

Bloc de code
#hibernate.dialect=org.hibernate.dialect.MySQLInnoDBDialect

Pour PostgreSQL :

Bloc de code
hibernate.dialect=org.hibernate.dialect.PostgreSQLDialect

Propriétés JDBC

L'application utilise toujours JDBC pour l'accès à la base de données en ligne de commande (tâche asynchrones).

URL (requise)

L'URL de la base de données, par défaut helpdesk sur localhost :

Bloc de code
#hibernate.connection.jdbc.url=jdbc:mysql://localhost/helpdesk

Pour PostgreSQL :

Bloc de code
hibernate.connection.jdbc.url=jdbc:postgresql://localhost:5432/helpdesk

Authentification (requise)

L'authentification à la base de données :

Bloc de code
#hibernate.connection.jdbc.username=admin
#hibernate.connection.jdbc.password=secret

Propriétés JNDI

L'application peut, pour les requêtes web, utiliser JNDI pour l'accès à la base de données. Cela est conseillé en production pour des raisons de performances, et cela pemet également de surveiller la charge de la base de données grâce à des outils comme LambdaProbe (voir 25 Surveillance des applications).

Si l'on préfère utiliser JDBC pour accéder à la base même depuis les requêtes web, il suffit de positionner :

Bloc de code
hibernate.useJndi=false

Pour utiliser un pool de connection défini dans Tomcat par exemple de cette manière dans le contexte de l'application :

Bloc de code
<Resource name="jdbc/esup-helpdesk" auth="Container" type="javax.sql.DataSource" username="admin"
    password="secret" driverClassName="com.mysql.jdbc.Driver" url="jdbc:mysql://localhost/rennes1-20080905"
    maxActive="100" maxIdle="10" maxWait="10000" removeAbandoned="true" removeAbandonedTimeout="60"
    logAbandoned="true" />

On indiquera simplement le nom de la source de données à l'application :

Bloc de code
hibernate.useJndi=true
hibernate.connection.jndi.datasource=jdbc/esup-helpdesk

L'application détectera automatiquement dans quelle mode (web ou ligne de commande) elle se trouve, et utilise alors l'accès JNDI ou JDBC.

Connecteur JDBC

esup-helpdesk est configuré par défaut pour utiliser MySql, embarquant notamment le connecteur MySql pour Java (mysql-connector-java.jar). Pour se connecter à un autre type de base de données que MySql, il faut :

  • utiliser le pilote et le dialecte Hibernate correspondant à la nouvelle base de données
  • ajouter le connecteur pour Java correspondant dans le répertoire /webapps/WEB-INF/lib
  • permettre la récupération du connecteur lors de la prochaine mise à jour (cf Conservation des personnalisations lors des mises à jour).

Voir : La documentation Hibernate

MySql

Le connecteur MySql est inclus par défaut dans la distribution.

PostgreSQL


Postgresql 7.4 :  pg74.1jdbc3.jar

Postgresql 8.2 : postgresql-8.2-506.jdbc3.jar

Les drivers pour les différentes versions de Postgresql sont téléchargeables à l'adresse : http://jdbc.postgresql.org/download.html 

Oracle

todo
A compléter
A compléter