This shows you the differences between two versions of the page.
Next revision | Previous revision | ||
wiki:epims4_0m1:developer:configdev [2008/03/03 13:39] 127.0.0.1 external edit |
wiki:epims4_0m1:developer:configdev [2008/10/02 10:21] (current) |
||
---|---|---|---|
Line 28: | Line 28: | ||
===== Environnement de développement ===== | ===== Environnement de développement ===== | ||
+ | |||
+ | |||
Line 61: | Line 63: | ||
+ | ==== IVY : Librairies tierces ==== | ||
+ | Quelque soit le module, lorsqu'un checkout depuis SVN est réalisé, il est nécessaire d'exécuter la tache Ant "resolve" afin que les librairies tierces soient récupérées au niveau du projet. | ||
+ | FIXME: Actuellement nous utilisons un repository interne pour ivy. Il faudrait rendre accessible une image de ce repository afin de s'assurer que la même configuration est utilisée sur tous les sites de développement ! | ||
Line 70: | Line 74: | ||
==== Configuration des Modules ==== | ==== Configuration des Modules ==== | ||
- | |||
- | == Librairies tierces == | ||
- | Quelque soit le module, lorsqu'un checkout depuis SVN est réalisé, il est nécessaire d'exécuter la tache Ant "resolve" afin que les librairies tierces soient récupérées au niveau du projet. | ||
- | |||
- | FIXME: Actuellement nous utilisons un repository interne pour ivy. Il faudrait rendre accessible une image de ce repository afin de s'assurer que la même configuration est utilisée sur tous les sites de développement ! | ||
- | |||
== Configuration développement/production == | == Configuration développement/production == | ||
Line 100: | Line 98: | ||
eP-Core est le module contenant les parties métier et accès à la base de données d'ePims, pour cela il utilise les frameworks/outils Hibernate et Spring. | eP-Core est le module contenant les parties métier et accès à la base de données d'ePims, pour cela il utilise les frameworks/outils Hibernate et Spring. | ||
- | FIXME: Voir ce qu'il y a de spécifique à faire à ce niveau là ! | + | FIXME: Voir ce qu'il y a de spécifique à faire à ce niveau là ! (utile à Eclipse et lors de modification du modele) |
Le fichier spécifique au mode de développement est sous ./resources/dev et est identique à celui nécessitant une configuration pour l'installation, voir [[../admin:configurationepims#eP-Core]]. | Le fichier spécifique au mode de développement est sous ./resources/dev et est identique à celui nécessitant une configuration pour l'installation, voir [[../admin:configurationepims#eP-Core]]. | ||
- | Une fois ce fichier modifié, il faut lancer la cible ANT "dist.dev" pour mettre à jour la configuration d'eP-Core pour le développement. Puis la cible "create.onejar" pour créer une distribution à déployer sur le serveur d'application de développement ("onejar" car cette cible créé un jar contenant eP-Core et toute ses dépendances). | ||
- | FIXME: Reprendre les cibles ANT afin de regrouper (ou non) : publish / publish.libs / create.onejar / dist ... | + | __Targets Ant dans Eclipse et sans IDE :__ |
+ | |||
+ | - la cible ANT **"dist.dev"**, une fois le fichier de configuration modifié, est lancée pour mettre à jour la configuration d'eP-Core pour le développement. | ||
+ | - la cible "create.onejar" permet de créer une distribution à déployer sur le serveur d'application de développement ("onejar" car cette cible créé un jar contenant eP-Core et toute ses dépendances). | ||
+ | |||
+ | La première cible génère la structure suivante : | ||
+ | * bin/dist/ | ||
+ | * eP-Core-<version>/ | ||
+ | * lib/ contient toutes les librairies nécessaire à eP-Core | ||
+ | * eP-Core.VERSION: fichier texte contenant la version et date de création | ||
+ | * eP-Core-<version>.jar : jar contenant les classes d'eP-Core | ||
+ | * eP-Core-<version>.zip : zip contenant le répertoire eP-Core-<version> | ||
+ | |||
+ | La seconde ajoute dans bon/dist : | ||
+ | * oneJar/ | ||
+ | * eP-Core-<version>.jar : jar contenant les classes d'eP-Core et toutes les librairies nécessaire à eP-Core | ||
+ | * ePCore.properties : fichier de propriété à modifier (cf ci-dessus) | ||
+ | * updateJar.bat/sh : script de mise à jour de ePCore.properties dans le jar | ||
=== eP-Web === | === eP-Web === | ||
- | eP-Web est l'application web d'ePims. | + | eP-Web est l'application web d'ePims. |
- | Il est nécessaire de configurer d'une part le fichier de propriétés //eP-Web.properties// (qui se trouve sous ./resources/main FIXME A dupliquer dans le repertoire dev?) et d'autre part le fichier ./WebRoot/WEB-INF/geronimo-web.xml | + | Il est nécessaire de configurer (La configuration est identique à celle définie dans [[..:admin:configurationepims#ep-web_ep-webservices]]) |
- | La configuration est identique à celle définie dans [[..:admin:configurationepims#ep-web_ep-webservices]] | + | * le fichier de propriétés //eP-Web.properties// (qui se trouve sous ./resources/main FIXME A dupliquer dans le repertoire dev?) |
+ | * le fichier ./WebRoot/WEB-INF/geronimo-web.xml | ||
+ | * le fichier */WebRoot/jnlp/epplate.jnlp : mettre le nom/port du serveur web pour la propriété | ||
- | Il faut ensuite exécuter la cible ANT "configure" pour répercuter ces modifications. | + | <application-desc ...> |
+ | <argument>...</argument> | ||
+ | </application-desc > | ||
+ | |||
+ | |||
+ | __Dans le contexte Eclipse :__ | ||
+ | |||
+ | Il faut définir une User Library qui pointe sur eP-Core. Pour cela, menu Windows > Preferences, sélectionner Java / Build Path / User Libraries et New. La nouvelle librairie a pour nom ''eP-Core-3.4.0'' et pointe soit sur le jar issu de la target oneJar d'eP-Core soit le jar d'eP-Core issu de dist et toutes les librairies nécessaire à eP-Core. Si un autre nom est utilisé, il faut modifier le build path du projet eP-Web (properties / Java Buils Path, choisir l'onglet Libraries et cliquer sur add Library)... | ||
+ | |||
+ | Il faut ensuite exécuter la cible ANT **configure** pour répercuter les modifications faites dans les différents fichiers de config. | ||
+ | |||
+ | __Dans un contexte sans IDE :__ | ||
+ | |||
+ | En attendant une mailleur structuration et organisation des différents projets, pour générer le .war à intégrer dans le EAR d'ePims, il faut : | ||
+ | |||
+ | * Il faut copier le fichier eP-Core.jar issu de la target oneJar d'eP-Core dans ./WebRoot/WEB-INF/lib | ||
+ | * Il faut copier le jar contenant l'api de Servlet / JSP (A DEFINIR PRECISEMENT) dans ./WebRoot/WEB-INF/lib | ||
+ | * exécuter la cible Ant **dist.full** | ||
Line 122: | Line 156: | ||
De même que pour eP-Web, il est nécessaire de configurer le fichier ./WebRoot/WEB-INF/geronimo-web.xml en utilisant les définitions données dans [[..:admin:configurationepims#ep-web_ep-webservices]]. | De même que pour eP-Web, il est nécessaire de configurer le fichier ./WebRoot/WEB-INF/geronimo-web.xml en utilisant les définitions données dans [[..:admin:configurationepims#ep-web_ep-webservices]]. | ||
+ | |||
+ | __Dans le contexte Eclipse :__ | ||
+ | |||
+ | Il faut définir une User Library qui pointe sur eP-Core. Pour cela, menu Windows > Preferences, sélectionner Java / Build Path / User Libraries et New. La nouvelle librairie a pour nom ''eP-Core-3.4.0'' et pointe soit sur le jar issu de la target oneJar d'eP-Core soit le jar d'eP-Core issu de dist et toutes les librairies nécessaire à eP-Core. Si un autre nom est utilisé, il faut modifier le build path du projet eP-Web (properties / Java Buils Path, choisir l'onglet Libraries et cliquer sur add Library)... | ||
+ | |||
+ | Il faut ensuite exécuter la cible ANT **configure.dist** pour répercuter les modifications faites dans les différents fichiers de config. | ||
+ | |||
+ | __Dans un contexte sans IDE :__ | ||
+ | |||
+ | En attendant une mailleur structuration et organisation des différents projets, pour générer le .war à intégrer dans le EAR d'ePims, il faut : | ||
+ | |||
+ | * Il faut copier le fichier eP-Core.jar issu de la target oneJar d'eP-Core dans ./WebRoot/WEB-INF/lib | ||
+ | * exécuter la cible Ant **dist.full** | ||
=== ePims === | === ePims === | ||
- | ePims est l'application EAR contenant eP-Web et eP-WebService. | + | ePims est l'application EAR contenant eP-Web et eP-WebService. Il est nécessaire de correctement configurer ePims au niveau de la data source... voir la configuration des modules d'ePims dans la documentation [[..:admin:]] |
+ | |||
+ | __Dans le contexte Eclipse :__ | ||
Si une erreur apparait au niveau du serveur associé à l'application (Targeted Runtimes), il faut aller dans les propriétés de l'application, page 'targeted runtimes', déselectionner 'Apache Geronimo 1.1' et soit le resélectionner soit le recréer ... | Si une erreur apparait au niveau du serveur associé à l'application (Targeted Runtimes), il faut aller dans les propriétés de l'application, page 'targeted runtimes', déselectionner 'Apache Geronimo 1.1' et soit le resélectionner soit le recréer ... | ||
- | Il n'y a pas de cible Ant pour ce projet. Néanmoins il est nécessaire de correctement configurer ePims au niveau de la data source... voir la configuration des modules d'ePims dans la documentation [[..:admin:]] | + | Il n'y a pas de cible Ant pour ce projet lorsque l'on déploie à partir de Eclipse |
+ | |||
+ | __Dans un contexte sans IDE :__ | ||
+ | En attendant une mailleur structuration et organisation des différents projets, pour générer le .ear il faut | ||
+ | * copier eP-Web.war à la racine du projet | ||
+ | * copier eP-WebServices.war à la racine du projet | ||
+ | * exécuter la cible Ant **dist** Le EAR généré peut alors être déployé sur le serveur Geronimo | ||
=== eP-Plate === | === eP-Plate === | ||
FIXME | FIXME |