IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
logo

FAQ StrutsConsultez toutes les FAQ

Nombre d'auteurs : 25, nombre de questions : 96, dernière mise à jour : 23 février 2015  Ajouter une question

 

Cette FAQ a été réalisée à partir des questions fréquemment posées sur les forums de http://www.developpez.com et de l'expérience personnelle des auteurs.

Nous tenons à souligner que cette FAQ ne garantit en aucun cas que les informations qu'elle propose sont correctes. Les auteurs font leur maximum, mais l'erreur est humaine. Cette FAQ ne prétend pas non plus être complète. Si vous trouvez une erreur, ou que vous souhaitez nous aider en devenant rédacteur, lisez ceci.

SommaireConfiguration de l'application StrutsLes Datasources (3)
précédent sommaire suivant
 

Bien qu'il ne soit pas recommandé de gérer la persistance des données dans la couche de présentation, il peut être utile d'accéder aux datasources directement.

Le DataSource manager de Struts est le composant en charge de la gestion des DataSources; il est configuré directement dans le fichier de configuration struts-config.xml. Il peut être utilisé pour déployer n'importe quel pool de connexions qui implémente l'interface javax.sql.DataSource.
Si aucun composant natif n'est livré, vous pouvez aussi utiliser le Jakarta Commons dbcp's BasicDataSource [org.apache.commons.dbcp.BasicDataSource] disponible dans le projet Commons chez Jakarta.

Vous devez configurer votre source de données (exemple pour PostgreSQL) dans struts-config.xml :

Code xml : Sélectionner tout
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<data-sources> 
<!-- configuration for commons BasicDataSource --> 
  <data-source type="org.apache.commons.dbcp.BasicDataSource"> 
    <set-property property="driverClassName" value="org.postgresql.Driver" /> 
    <set-property property="url" value="jdbc:postgresql://localhost/mydatabase" /> 
    <set-property property="username" value="me" /> 
    <set-property property="password" value="test" /> 
    <set-property property="maxActive" value="10" /> 
    <set-property property="maxWait" value="5000" /> 
    <set-property property="defaultAutoCommit" value="false" /> 
    <set-property property="defaultReadOnly" value="false" /> 
    <set-property property="validationQuery" value="SELECT COUNT(*) FROM users" /> 
  </data-source> 
</data-sources>

Note : la requête de la propriété validationQuery doit retourner au moins une ligne.

Vous pouvez ensuite utiliser directement cette connexion dans vos Actions.

Mis à jour le 19 février 2005 RanDomX

Si vous avez besoin d'utiliser plusieurs DataSources dans votre application Struts, vous pouvez utiliser l'attribut key du nœud <data-source>, comme ceci :

Code xml : Sélectionner tout
1
2
3
4
5
6
7
8
9
<data-sources> 
   <data-source key="FirstDataSource" type="org.apache.commons.dbcp.BasicDataSource"> 
      ... <!-- idem question précédente --> ... 
   </data-source> 
   <data-source key="SecondDataSource" type="org.apache.commons.dbcp.BasicDataSource"> 
      ... <!-- idem question précédente --> ... 
   </data-source> 
   ... 
</data-sources>

Mis à jour le 19 février 2005 RanDomX

Par défaut, Struts utilise la classe org.apache.struts.util.GenericDataSource comme implémentation de l'interface javax.sql.Datasource.

Il est cependant possible de changer cette implémentation par une autre, par exemple celle fournie avec Oracle.

Pour ce faire, il suffit de spécifier le nom qualifié de cette classe comme valeur de l'attribut type dans le nœud <data-source>.

Code xml : Sélectionner tout
1
2
3
4
5
<data-sources> 
  <data-source type="oracle.jdbc.pool.OracleDataSource"> 
    ... 
  </data-source> 
</data-sources>

Mis à jour le 19 février 2005 RanDomX

Proposer une nouvelle réponse sur la FAQ

Ce n'est pas l'endroit pour poser des questions, allez plutôt sur le forum de la rubrique pour ça


Réponse à la question

Liens sous la question
précédent sommaire suivant
 

Les sources présentées sur cette page sont libres de droits et vous pouvez les utiliser à votre convenance. Par contre, la page de présentation constitue une œuvre intellectuelle protégée par les droits d'auteur. Copyright © 2022 Developpez Developpez LLC. Tous droits réservés Developpez LLC. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez LLC. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.