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

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Développement Web en Java Discussion :

[Stratégie] Configuration sur la PROD et la DEV


Sujet :

Développement Web en Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre émérite
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    957
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 957
    Par défaut [Stratégie] Configuration sur la PROD et la DEV
    Hello,

    dites-moi dans un environnement WEB, ou et comment je fais pour parametrer
    mes differentes variables.

    Je voudrais configurer, des chemins de fichiers, des valeurs par defauts...
    elles sont differentes en fonction de l'environnement.

    Comment puis-je faire ?

    merci.

  2. #2
    Membre chevronné
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    280
    Détails du profil
    Informations personnelles :
    Âge : 52
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 280
    Par défaut
    Bonjour,

    Voici ce que je fais personnellement:

    Pour chaque environnement (prod,recette, dev)

    J'ai les 2 fichiers suivants:
    web.xml: servlet, mapping, chemin d'access,...
    context.xml: configuration de connexion à la base.

    Lorsque je lance un Build via ant, j'ai 3 fichiers war qui sont créés avec les fichiers correspondant pour chaque environnent.

    Farid.

  3. #3
    Membre émérite
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    957
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 957
    Par défaut
    Okay merci,

    a priori je vais devoir passer par du ANT, je n'y connais rien ca promet.
    Question idiote quand tu créés 3 war, tu dois les renomer avant de
    les installer sur tes serveurs.

  4. #4
    Membre chevronné
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    280
    Détails du profil
    Informations personnelles :
    Âge : 52
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 280
    Par défaut
    c'est assez simple ant.

    voici par example mon script ant executé sous eclipse:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
     
    <?xml version="1.0" encoding="UTF-8"?>
    <project name="NOM_DU_PROJECT" default="warfile" basedir=".">
    	<target name="warfile" depends="init">
    		<!-- Prod -->
    		<copy file="${basedir}/warfiles/Prod/context.xml" tofile="${basedir}/WebContent/META-INF/context.xml" overwrite="true"/>
    		<copy file="${basedir}/warfiles/Prod/web.xml" tofile="${basedir}/WebContent/WEB-INF/web.xml" overwrite="true"/>
    		<war destfile="${basedir}/warfiles/Prod/confidence.war" webxml="${basedir}/WebContent/WEB-INF/web.xml">
    			<fileset dir="${basedir}/WebContent"/>
    			<classes dir="${basedir}/build/classes"/>
    		</war>
     
    		<!-- Recette -->
    		<copy file="${basedir}/warfiles/Test/context.xml" tofile="${basedir}/WebContent/META-INF/context.xml" overwrite="true"/>
    		<copy file="${basedir}/warfiles/Test/web.xml" tofile="${basedir}/WebContent/WEB-INF/web.xml" overwrite="true"/>
    		<war destfile="${basedir}/warfiles/Test/recette.war" webxml="${basedir}/WebContent/WEB-INF/web.xml">
    			<fileset dir="${basedir}/WebContent"/>
    			<classes dir="${basedir}/build/classes"/>
    		</war>
    	</target>
    	<target name="init">
    	</target>
    </project>
    Ici les 2 wars sont crées avec leur fichiers respectif.
    Je renomme toujours les war en fonction du context root comme ca je vois tout de suite a quel environnement correspond le war.

    Pour info voici les fichiers de config pour l'environnement de recette. (recette.war)

    context.xml:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    <?xml version="1.0" encoding="UTF-8"?>
    <Context path="/recette" docBase="confidence" debug="5"
    	reloadable="true">
    	<Resource name="jdbc/ConfidenceDB" auth="Container"
    		type="javax.sql.DataSource" username="USERNAME" password="PASSWORD"
    		driverClassName="oracle.jdbc.driver.OracleDriver"
    		url="jdbc:oracle:thin:@ADD_IP:1521:SID" maxActive="100"
    		maxIdle="50" maxWait="-1" removeAbandoned="true" logAbandoned="true" />
    </Context>
    web.xml

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
     
    <?xml version="1.0" encoding="UTF-8"?>
    <web-app id="WebApp_ID" version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
    	<display-name>confidence</display-name>
    	<welcome-file-list>
    		<welcome-file>Login.jsp</welcome-file>
    	</welcome-file-list>
    	<servlet>
    		<servlet-name>Controller</servlet-name>
    		<servlet-class>com.company.servlet.Controller</servlet-class>
    		<init-param>
    			<param-name>PDFReportPath</param-name>
    			<param-value>/data/crm/reports/recette</param-value>
    		</init-param>
    		<init-param>
    			<param-name>PDFOPMarketingPath</param-name>
    			<param-value>/data/crm/reports/MKGOP/recette</param-value>
    		</init-param>
    		<init-param>
    			<param-name>ContactHistoryTimeZone</param-name>
    			<param-value>Indian/Reunion</param-value>
    		</init-param>
    		<init-param>
    			<param-name>ContactCantonCorrectionZipCodeFilter</param-name>
    			<param-value>974%</param-value>
    		</init-param>
    	</servlet>
    	<servlet-mapping>
    		<servlet-name>Controller</servlet-name>
    		<url-pattern>/Controller</url-pattern>
    	</servlet-mapping>
    </web-app>
    Voila quelques debut de piste pour comprendre.

    Farid.

  5. #5
    Membre émérite
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    957
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 957
    Par défaut
    C'est super sympa merci, tu créés autant de fichier de conf que de plateforme.
    Si j'avais sauvé par exemple la conf d'un serveur de mail (IP/PORT)

    je devrais créer 2 fichiers setup.ini, un pour la prod et un pour la recette ?

    Est-ce que ca veux-dire que tu as un dossier special ou tu stocks tous ces fichiers.

    /WEB-INF
    /CONF
    /PROD
    /TEST
    /DEV

  6. #6
    Membre chevronné
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    280
    Détails du profil
    Informations personnelles :
    Âge : 52
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 280
    Par défaut
    A partir du moment ou les fichiers ont des differences, alors oui un fichier par environment.
    L'idée etant quand meme de limiter au maximum la quantite de fichiers car sinon ca devient difficile a maintenir.
    Hors certain cas spéciaux, les 2 fichiers context.xml et web.xml suffise pour contenir les differences d'environnement.

    Context.xml => Root de l'application et connexion a une DB
    Web.xml => les differents parametres comme les chemins d'acces...

    Dans mon environnement de dev (eclipse) j'ai en effet 2 repertoire Prod et Recette qui contiennent les fichiers specifiques a ces environnement. Mais ils sont en dehors de mon project.
    Je n'utilise ces fichier que pour creer le war.

    Concernant ton fichier ini, pourquoi un fichier ini ?
    Definit juste ces parametres dans web.xml et recupere les dans tes servlet.

    Farid.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [2.x] Erreurr 404 en PROD mais en DEV sur OVH mutualisé
    Par xiaolong dans le forum Symfony
    Réponses: 1
    Dernier message: 13/05/2013, 16h29
  2. test configuration sur routeur juniper
    Par mmb04 dans le forum Réseau
    Réponses: 0
    Dernier message: 15/01/2009, 17h07
  3. sql serveur 2000 et 2005 sur un meme serveur de DEV.
    Par ylarvor dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 17/09/2007, 10h24
  4. Réponses: 8
    Dernier message: 12/06/2007, 20h58
  5. Choix d'un panneau de configuration sur dédié (Linux)
    Par onet dans le forum Serveurs (Apache, IIS,...)
    Réponses: 1
    Dernier message: 22/03/2006, 16h46

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo