Projets
Pages enfant
  • 1.5 Du développement à l'exploitation

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.
Commentaire: Migrated to Confluence 5.3

...

Bloc de code
<context:property-placeholder
		location="classpath:/properties/defaults.properties,classpath:/properties/config.properties" />

...

Utiliser Maven pour travailler sur un dossier de type "webapps"

Si vous préférez rapatrier localement le projet Maven à la source du développement pour pouvoir intervenir sur les sources et préparer un répertoir de type webappas pour le copier ensuite sur un serveur d'application Tomcat...

En complément, il vous faudra modifier les fichiers "log4j.properties" et "web.xml" pour parvenir à exploiter correctement l'application...

Utilisez Faites un checkout du projet (sur sourceSup par exemple)... Organisez le dans Eclipse comme un projet Maven avec ses modules... utilisez un profile comme celui-ci dans le pom.xml du module "vues" de l'application (après avoir lancé le profile "Production") :

Bloc de code
<profile>
            <id>webConfigure</id>
            <activation>
                <property>
                    <name>webConfigure</name>
                    <value>true</value>
                </property>
            </activation>
            <build>
                <filters>
                    <filter>./../../../../WEB-INF/classes/properties/defaults.properties</filter>
                    <filter>./../../../../WEB-INF/classes/properties/config.properties</filter>
                </filters>
                <resources>
                    <resource>
                        <directory>./../../../../WEB-INF</directory>
                        <filtering>true</filtering>
                    </resource>
                </resources>
                <defaultGoal>compile</defaultGoal>
   </build>
</profile>

Le lancement de ce profile est obtenu avec cette commande maven (ou son équivalent avec le plugin Eclipse):

Bloc de code
mvn compile -DWebConfigure=true

depuis le répertoire META-INF/maven/org.esupportail/nom-appli/

Cas particulier du paramétrage de classe

Vous devrez peut-être paramétrer l'utilisation de classe plutôt que l'utilisation de simples variables.
Un exemple: depuis le "domain" d'une application on désire utiliser une classe "maison" à la place d'une classe fournie...
Si le bean Spring du "domain" est inclus dans le module maven du "domain", la substitution de variable ne peut s'appliquer sur lui (il n'est pas dans le module maven "vues" de l'application).

Voici un bean Spring de cet ordre:

Bloc de code
<bean id="domainService" class="org.esupportail.annuaire2.domain.DomainServiceImpl">
		<property name="structuresService" ref="ldapStructuresService${annuaire2.ldap.schema}" />
...

"annuaire2.ldap.schema" predra une valeur via une variable d'environnement (à l'exécution) comme ceci:

Bloc de code
export  </build>
        </profile>"annuaire2.ldap.shema"=Lille1

On aura alors le bean Spring suivant qui sera utilisée: ldapStructuresServiceLille1, celui-ci faisant référence à la bonne classe...

Bloc de code
<bean id="ldapStructuresServiceLille1"
		class="fr.univlille1.annuaire2.ldap.services.StructuresServiceImpl">
		<description>
			This bean provides LDAP facilities to manage structures.
		</description>

Utilisation de la variable @file + passage de paramétre au conteneur d'application : permet de sortir la config de l'arbo de l'appli