Pages enfant
  • Installation et configuration - Esup Annuaire2

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.

...

  1. Si ce n'est déjà fait, mettre en place un espace de BUILD qui soit différent de la production.
  2. Créer dans cet espace un répertoire spécifique pour l'application (ici nommé annuaire2). Et dans celui-ci un répertoire "custom".
  3. Y construire une hiérarchie de répertoires contenant vos fichiers personnalisés. En voici un exemple (les éléments utiles sont en rouge):

Dans le répertoire WEB-INF, vous aurez le "porlet.xml" personnalisé.

Bloc de code

<?xml version="1.0" encoding="UTF-8"?>
<portlet-app xmlns="http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd"
	version="1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd
                        http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd">

	<portlet>
		<portlet-name>${portlet.name}</portlet-name>
		<display-name xml:lang="fr">esup-annuaire2</display-name>
		<portlet-class>javax.portlet.faces.GenericFacesPortlet</portlet-class>
        <!-- if you don'nt need mobile, you can change this first page to
              /stylesheets/desktop/welcome.xhtml -->
		<init-param>
			<name>javax.portlet.faces.defaultViewId.view</name>
			<value>/stylesheets/home.xhtml</value>
		</init-param>
		<expiration-cache>0</expiration-cache>
		<supports>
			<mime-type>text/html</mime-type>
			<portlet-mode>VIEW</portlet-mode>
		</supports>
		<supported-locale>fr</supported-locale>
		<supported-locale>en</supported-locale>
		<portlet-info>
			<title>${portlet.name}</title>
			<short-title>${portlet.name}</short-title>
			<keywords>esup-annuaire2</keywords>
		</portlet-info>
	</portlet>

</portlet-app>

Dans le répertoire properties, vous aurez le fichier config.properties de l'application personnalisé.

  1. Depuis ce répertoire, lancer un script avec les commandes suivantes (ici avec l'application esup-annuaire2le trunk):
    Bloc de code
    svn co https://subversion.cru.fr/esup-annuaire2/trunk/esup-annuaire2
    zip -r packages/esup-annuaire2.zip esup-annuaire2/
    rm -rf esup-annuaire2/
    
  2. puis lancer un autre script avec les commandes suivantes:
    Bloc de code
    ant init
    cd=`pwd`
    cd annuaire2
    mvn clean install
    cd esup-annuaire2-web-jsf-mixed/
    mvn -DProduction=true clean package
    cd /home/tomcat/portail/BUILD/esup-package
    ant portlet.deploy -DportletApp=/home/tomcat/portail/BUILD/applis/annuaire2/annuaire2/esup-annuaire2-web-jsf-mixed/target/esup-annuaire2-0.1.0.war
    cd $cd
    
    Commentaires:
    La cible "init" va partir du .zip construit par le script précédent pour y incorporer les fichiers que vous avec personnalisés, elle est constituée ainsi:
    Bloc de code
    <target name="init" depends="unzip">
        <copy overwrite="true" todir="${appli.base}/">
            <fileset dir="custom" includes="**/*" />
        </copy>
    </target>
    
    <target name="unzip">
        <delete dir="${appli.base}"/>
        <delete dir="${appli.tmp}"/>
        <mkdir dir="${appli.tmp}"/>
        <unzip src="${appli.packages}/${appli.package-name}" dest="${appli.tmp}"   />
        <move todir="${appli.base}/">
            <fileset dir="${appli.tmp}/${appli.name-version}"/>
        </move>
    </target>    
    Les propriétés utilisées sont celles-ci:
    Bloc de code
    appli.name-version=esup-annuaire2
    appli.package-name=${appli.name-version}.zip
    appli.name=annuaire2
    appli.root=/home/tomcat/portail/BUILD/applis/${appli.name}
    appli.base=/home/tomcat/portail/BUILD/applis/${appli.name}/${appli.name}
    appli.tmp=${appli.root}/temp
    appli.packages=${appli.root}/packages
    
    La commande Maven "clean install" va créer un répertoire "target", compiler les différents modules de l'application
    On se place ensuite dans le module web de l'application.
    La commande Maven -DProduction=true clean package réalise la construction du ficher WAR.
    La suite, c'est l'assemblage dans un nouveau web.xml du web.xml livré dans le WAR avec le fichier portlet.xml.