Bonjour,
Je me suis remis depuis maintenant 1 mois sur le développement JAVA et notamment avec le framework spring apres 9 ans.
J'ai repris le tutoriel de Mr Pouillerhttps://rpouiller.developpez.com/tutoriels/spring/application-web-spring-hibernate/
J'ai une question sur la déclaration de la ressource datasource et son utilisation.
Dans le tutoriel, la ressource est déclaré dans le server.xml
Code XML : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 <GlobalNamingResources> ... <Resource auth="Container" driverClassName="org.hsqldb.jdbcDriver" maxActive="100" maxIdle="30" maxWait="10000" name="jdbc/dsMaBase" password="" type="javax.sql.DataSource" url="jdbc:hsqldb:file:C:\hsqldb\data\maBase" username="sa" /> ... </GlobalNamingResources>
puis un lien sur cette ressource est crée dans le context.xml
Code XML : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 <ResourceLink name="jdbc/dsMonApplication" global="jdbc/dsMaBase" type="javax.sql.DataSource" />
enfin, dans le web.xml de l'application la ressource est récupéré:
Code XML : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 <!-- Declaration de l'utilisation de la ressource JDBC --> <resource-ref> <description>Ressource JDBC de l'application</description> <res-ref-name>jdbc/dsMonApplication</res-ref-name> <res-type>javax.sql.DataSource</res-type> <res-auth>Container</res-auth> <res-sharing-scope>Shareable</res-sharing-scope> </resource-ref>
pour au final l'utiliser dans le dispatcher-servlet.xml
Code XML : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 <bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean"> <property name="jndiName" value="java:comp/env/jdbc/dsMonApplication" /> </bean>
Est il nécessaire de faire "suivre" la ressource dans chaque contexte ( context. xml / Web.xml / Dispatcher.xml). Ne peut on pas directement récupérer la ressource déclaré dans le server.xml depuis le dispatcher-servlet.xml?
J'ai essayé en déclarant une variable environnement dans le context.xml
et j'ai pu la récupérer dans mon dispatcher-servlet.xml
Code XML : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 <Environment name="envName" value="daaeeeev" type="java.lang.String" />
et ça fonctionne bien.
Code XML : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 <bean id="environnementName" class="org.springframework.jndi.JndiObjectFactoryBean"> <property name="jndiName" value="java:comp/env/envName" /> </bean>
Je me posais donc une question sur l'utilité de déclarer la ressource le long de toute la chaine des fichiers xml.
Merci d'avance pour votre réponse.
Pierre
Partager