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



Comment configurer un datasource utilisable directement par Struts ?
auteur : Lionel Roux (aka RanDomX)
Bien qu'il ne soit pas recommandé de gérer la persistence 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 connections 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 :

<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.

lien :  Comment utiliser un datasource avec Struts ?

Comment configurer plusieurs datasources utilisables par Struts ?
auteur : Lionel Roux (aka RanDomX)
Si vous avez besoin d'utiliser plusieurs DataSources dans votre application Struts, vous pouvez utiliser l'attribut key du noeud <data-source>, comme ceci:

<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>
lien :  Comment utiliser plusieurs DataSources avec Struts?

Comment changer la classe d'implémentation du pool de connection d'un datasource ?
auteur : Lionel Roux (aka RanDomX)
Par defaut, 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 imlpémentation par une autre, comme par exemple par celle fournit avec Oracle.

Pour ce faire, il suffit de spécifier le nom entièrement qualifié de cette classe comme valeur de l'attribut type dans le noeud <data-source>

<data-sources> <data-source type="orcale.jdbc.pool.OracleDataSource"> ... </data-source> </data-sources>