Portlet Stage-Emploi version 1.0.1

Installation et paramétrage du portlet
Auteur : Lucie DENGREVILLE - Dominique HOUDET-JOLY

Pré requis


Installation du package "esup-portail"


Référez-vous à la documentation de Esup-portail. Le portlet a été installé sur les versions 2.5 et 2.6 ALM de Esup-Portail, mais n'a pas encore été testé pour la version Esup-portail 2.6 DLM.

Librairies du portail


Vous trouverez dans le répertoire utils les librairies indispensables pour l'execution de l'application Stage-Emploi. Vous devez les ajouter si elles sont absentes, par exemple dans ${tomcat.home}/common/lib pour jsp-api.jar et servlet-api.jar et dans ${portal.lib} pour portlet-api.jar

SGBD


Ce portlet utilise le SGBD MySql, il a été testé avec les versions MySQL 4.0.24_Debian-10sarge2-log, 5.0.51, 5.0.22 et 5.1.28 de ce SGBD.

Annuaire Ldap


L'application Stage-Emploi n'accède pas directement aux applications de gestion de l'établissement , mais uniquement à l'annuaire LDAP, en lecture (pas de modification de LDAP depuis l'application). Les informations dans LDAP sont récupérées depuis Apogée (pour les étudiants) ou depuis Harpège (pour les personnels de l'université). En plus des deux unités d'organisation recommandées par SUPANN (ou=people et ou=groups), il faut prévoir dans LDAP:

Voici les attributs utilisés dans l'application :

Certains attributs doivent obligatoirement être renseignés : les attributs indispensables sont, pour ou=people : identifiant (uid), nom (sn), prénom (givenName), affiliation (eduPersonPrimaryAffiliation), affectation (code affectation), et également, pour les étudiants, étape d'étude (code étape) et numéro étudiant (suppanEtuId).

Contenu après décompression


Voici les différents fichiers présents depuis le répertoire racine

Installation


Configuration du Portlet


Le fichier de configuration config.properties


Le fichier properties/config.properties est utilisé pour configurer le portlet. Vous trouverez un exemple dans le fichier properties/config-sample.properties sur lequel il faut se baser pour créer le fichier properties/config.properties

Configuration de la base de données propre au portlet Stage-emploi


########################################################
# fichier de configuration de l'application StageEmploi#
########################################################

##
# Paramètres de connexion à la base de données StageEmploi
##

# Driver
db.driver=com.mysql.jdbc.Driver

# URL
db.url=jdbc:mysql:_localhost:3306/StageEmploi
# User
db.user=nomUser
# Password
db.password=password

Configuration des paramètres de connection à l'annuaire LDAP


######################################################
# Noms de paramètres LDAP dans l'appli mappés avec les
# paramètres de connexion à la base ldap
#(utilisés dans portlet-pstage-dao.xml)
############################################

# URL
ldap.url=ldap:_ldap.univ.fr:389/
# baseDn
ldap.base=dc=ldap,dc=uhb,dc=fr
# UserName
ldap.userName=cn=machin,ou=System,dc=ldap,dc=uhb,dc=fr
# Password
ldap.password=password

Année universitaire


#jour et mois de début d'une année universitaire
# pour année universitaire commençant le 1er octobre, noter :
#start.year.day=01
#start.year.month=10
start.year.day=01
start.year.month=10

Les variables start.year.day et start.year.month sont utilisées pour le calcul automatique de l'année universitaire des conventions de stages et des offres de stage et d'emploi.

Répertoire de stockage des logos


#repertoire où seront stockés les logos des centres de gestion (chemin absolu)
#ce répertoire doit être le même que celui indiqué dans le fichier conf/server.xml de Tomcat par ajout du contexte :
#exemple : <Context path="/esup-portlet-PStage/data" docBase="/home/lucie/pstage/logos" crossContext="true" reloadable="false" />
logos.dir=/home/lucie/pstage/logos

Configuration pour l'administration de l'application


#critère de création des centres de gestion :
#criterium.university.center=
#criterium.university.center=UFR
criterium.university.center=ETAPE

#uid (de ldap) des administrateurs principaux de l'appli,les valeurs sont séparées par une virgule ","
mainAdmin=machin_m,truc_b

Le fichier portlet.xml


Le fichier webpages/portlet.xml permet de configurer le démarrage de la partie Spring spécifique au portlet. La majeur partie de ce fichier ne doit pas être modifiée. Seule l'information entre les deux balises <user-attribute> peut être modifée en fonction de l'attribut ldap récupéré depuis le portail : vous devez ainsi indiquer la même valeur que celle saisie pour esup.affiliation dans votre fichier properties/config.properties.

Ainsi, si dans votre fichier properties/config.properties vous avez saisi esup.affiliation=eduPersonPrimaryAffiliation, indiquez eduPersonPrimaryAffiliation entre les deux balises <name>.

<user-attribute>
 <description>affiliation de la personne</description>
 <name>eduPersonPrimaryAffiliation</name>
</user-attribute>

Vous ne devez pas modifier les autres parties du fichier portlet.xml.

Le fichier messages_fr.properties


Le fichier properties/messages/messages_fr.properties permet de configurer certains messages que vous souhaiteriez personnaliser. Les variables doivent exister (ne pas les mettre en commentaire) mais peuvent ne rien contenir (vous pouvez indiquer "variable=" ), sauf pour les variables mail.error.student et mail.error.member.

##
# messages de l'application
##

#page d'accueil#
home.welcome=Bienvenue sur l'espace Stage-Emploi
student.welcome=Cet outil est accessible <strong>\u00E0 tous les \u00E9tudiants de l'Universit\u00E9 Rennes 2.
offer.need.validated=Vous devez valider cette offre avant de pouvoir la diffus\u00E9e.

offer.need.contact=Au moins un contact doit \u00EAtre d\u00E9fini pour enregistrer cette offre.

#codeNAf pour etablissment d'accueil
structure.codeNaf.info=Vous pouvez trouver le num\u00E9ro de SIRET et le code NAF de l'\u00E9tablissement d'accueil sur des sites internet sp\u00E9cialis\u00E9s sur les soci\u00E9t\u00E9s.

#duree maximum pour un stage conseillé
convention.max.duration=Selon la loi sur l'\u00E9galit\u00E9 des chances, un stage conseill\u00E9 ne peut d\u00E9passer six mois de date \u00E0 date.

#message indiqué lors de la creation d'un service
formulaire.add.service=Si l'\u00E9tablissement est trop petit pour pouvoir identifier un service d'accueil, ne rien saisir pour le nom du service.


#mail a indiquer lors du message d'erreur (erreur base de donnee, faterror ou portleterror) lorsque c'est
# un etudiant qui est connecte
mail.error.student=stages-emplois-etudiant@listes.univ.fr

#mail a indiquer lors du message d'erreur (erreur base de donnee, fatalerror ou portleterror) lorsque c'est
# un personnel qui est connecte
mail.error.member=stages-emplois-gestionnaire@listes.univ.fr

Le fichier languageCodes.xml


Le fichier properties/custom/languageCodes.xml permet de définir les différentes langues d'édition des conventions de stage. Il contient le code et le libellé de chaque langue. Ces codes de langues seront ceux à utiliser dans les fichiers properties/custom/languages.xml, properties/custom/covers.xml et properties/custom/civilities.xml.

Ce fichier est à personnaliser avec les langues d'édition souhaitées.

<languages>
 <language id="fr">Français</language>
 <language id="en">Anglais</language>
...
</languages>

Pour chaque balise <language>, on a :


Le fichier properties/custom/languages.xml est utilisé pour stocké le texte de la convention dans toutes les langues d'édition nécessaires à votre établissement.

Vous devez impérativement modifier ce fichier pour que les conventions soient adaptées à votre établissement. Les identifiants présents dans les balises language (ex. : _<language
id="fr">_ ) doivent obligatoirement correspondre au code de langue définis dans le fichier properties/custom/languageCodes.xml. Référez-vous au fichier properties/custom/languages.dtd dans lequel est définie la dtd de languages.xml.

Le fichier basicChoices.xml


Le fichier properties/custom/basicChoices.xml permet de définir les différents de choix base. Ces choix sont en particulier utilisés pour les champs "offre pourvue" et candidat local dans une offre de stage.Chaque type de choix est défini dans une balise <choice>.

Ce fichier est à personnaliser si nécessaire.

<choices>

 <choice id="0">non</choice>
 <choice id="1">oui</choice>
 <choice id="2">non spécifié</choice>

</choices>

Pour chaque balise <choice> on a :

Le fichier candidatures.xml


Le fichier properties/custom/candidatures.xml permet de définir les libellés des modes de candidature possibles lors de la saisie d'une offre d'emploi. Chaque mode est défini dans une balise <candidature>.

Ce fichier est à personnaliser si nécessaire.

<candidatures>

<candidature id="1">envoi par courriel</candidature>
<candidature id="2">envoi par courrier postal</candidature>
<candidature id="3">contact téléphonique</candidature>
<candidature id="4">lettre manuscrite</candidature>
<candidature id="5">indifférent</candidature>

</candidatures>

Pour chaque balise <candidature> on a :

Le fichier civilities.xml


Le fichier properties/custom/civilities.xml permet de définir les libellés des civilités dans les différentes langues d'édition des conventions. le choix en français est celui qui apparaitra à l'écran les choix dans les autres langues ne sont utilisés que pour l'impression Les identifiants présents dans les balises language (ex. : <language id="fr"> ) doivent obligatoirement correspondre au code de langue définis dans le fichier properties/custom/languageCodes.xml.

Ce fichier est à personnaliser selon les langues d'édition choisies dans languageCodes.xml

L'ordre dans lequel sont classés les choix sera l'ordre d'apparition à l'écran.

<civilities>
<language id="fr">
 <civility id="M">M.</civility>
 <civility id="MME">MME</civility>
 <civility id="MLLE">MLLE</civility>
</language>
<language id="en">
 <civility id="M">Mr.</civility>
 <civility id="MME">Mrs.</civility>
 <civility id="MLLE">Ms.</civility>
</language>
...
</civilities>

Pour chaque balise <language>, on a :

Le fichier contracts.xml


Le fichier properties/custom/contracts.xml permet de définir les libellés des types de contrats possibles lors de la saisie d'une offre d'emploi. Chaque type de contrat est défini dans une balise <contract>.

Ce fichier est à personnaliser si nécessaire.

<contracts>

 <contract id="1">CDD</contract>
 <contract id="2">CDI</contract>

</contracts>

Pour chaque balise <contract> on a :

Le fichier covers.xml


Le fichier properties/custom/covers.xml permet de définir les divers types d'affiliation à la sécurité sociale dans les différentes langues d'édition des conventions.Les identifiants présents dans les balises language (ex. : _<language
id="fr">_ ) doivent obligatoirement correspondre au code de langue définis dans le fichier properties/custom/languageCodes.xml.De plus un identifiant de type d'affiliation doit correspondre au même type d'affiliation pour toutes les langues d'édition.

Ce fichier est à personnaliser selon les langues d'édition choisies dans languageCodes.xml

Le type d'affiliation correspondant à id=4 doit nécessairement correspondre au type "étudiant étranger" (en effet, dans le cas de l'identifiant 4, le numéro de sécurité sociale et la caisse de maladie ne sont pas obligatoires, puisqu'il s'agit d'un étudiant étranger)

<covers>
 <language id="fr">
 <cover id="1">en qualité d'ayant droit d'assuré social</cover>
 <cover id="2">en qualité d'étudiant(e)</cover>
 <cover id="3">par une assurance volontaire</cover>
 <cover id="4">étudiant étranger</cover>
 </language>
 <language id="en">
 <cover id="1">standard cover</cover>
 <cover id="2">student cover</cover>
 <cover id="3">other optional cover</cover>
 <cover id="4">foreigner student</cover>
</language>
...
</covers>

Le fichier formations.xml


Le fichier properties/custom/formations.xml permet de définir les libellés des familles de formations souhaitées lors de la saisie d'une offre de stage ou d'emploi.

Ce fichier est à personnaliser si nécessaire selon les formations dispensées à l'université. .

<formations>
 <formation id="1">AMENAGEMENT/URBANISME/ENVIRONNEMENT</formation>
 <formation id="2">ART/PATRIMOINE</formation>
 <formation id="3">COMMERCE INTERNATIONAL/MARKETING</formation>
...

</formations>

Chaque formation est définie dans une balise <formation>. Pour chaque balise <formation> on a :

Le fichier functions.xml


Le fichier properties/custom/functions.xml permet de définir les fonctions lors de la saisie d'une offre de stage ou d'emploi. Ce classement correspond aux fonctions définies par l'APEC.

il est déconseiller de modifier ce fichier.

<functions>
 <mainFunction id="010" title="Direction générale">
 <function id="011">--Direction d'entreprise</function>
 <function id="012">--Adjoint conseil de direction</function>
 </mainFunction>
 <mainFunction id="020" title="Production">
 ...
 </mainFunction>
 ....
</functions>

Les balises <mainFunction> correspondent aux grands types de fonctions dans lesquels sont regroupées les fonctions.

Pour chaque balise <mainFunction> on a :

Le fichier healthAuthorities.xml


Le fichier properties/custom/healthAuthorities.xml permet de définir les choix de caisses d'assurance maladie pour les conventions.

Ce fichier est à personnaliser si nécessaire.

<authorities>
 <authority id="CPAM">
 <lib>Caisse Primaire d'Assurance Maladie</lib>
 <info>Pour les étudiants, les travailleurs salariés, etc</info>
 </authority>
 <authority id="MSA">
 <lib>Mutualité Sociale Agricole</lib>
 <info>Pour les salariés ou exploitants agricoles</info>
 </authority>
....
</authorities>

Pour chaque caisse on a dans la balise <authority> avec id = identifiant de la formation qui sera stocké dans la base. Dans chaque balise authority, on a :

Le fichier levels.xml


Le fichier properties/custom/levels.xml permet de définir les niveaux de formations souhaités dans les offres de stage ou d'emploi.

Ce fichier est à personnaliser si nécessaire.

<levels>

<level id="1">Bac+1</level>
<level id="2">Bac+2</level>
<level id="3">Bac+3</level>
<level id="4">Bac+4</level>
<level id="5">Bac+5</level>
<level id="6">Bac+8</level>
<level id="7">Licence (bac+1,2,3)</level>
<level id="8">Master (bac+4,5)</level>
<level id="9">Tous niveaux</level>

</levels>

Pour chaque balise <level>, on a ::

Le fichier sizes.xml


Le fichier properties/custom/sizes.xml permet de définir les choix des tailles (effectif) d'établissement d'accueil.

Ce fichier est à personnaliser si nécessaire.

<sizes>
 <size id="0">Non connu</size>
 <size id="1">1 à 9</size>
 <size id="2">10 à 49</size>
 <size id="3">50 à 199</size>
 <size id="4">200 à 499</size>
 <size id="5">500 et plus</size>
</sizes>

Pour chaque balise <size>, on a :

Le fichier status.xml


Le fichier properties/custom/status.xml permet de définir les choix des statuts juridiques d'établissement d'accueil.

Ce fichier est à personnaliser si nécessaire.

Le statut juridique avec l'identifiant 7 doit forcément correspondre au type "autre", c'est à dire à des établissements qui ne possèdent pas de numéro de SIret. En effet, le numéro de siret n'est pas obligatoire pour les établissements d'accueil dont le statut juridique est défini comme étant de type 7. En revanche, le numéro Siret est obligatoire pour tous les autres cas.

<statusList>

 <status id="0">Non connu</status>
 <status id="1">Entreprise privée</status>>
 <status id="2">Administration publique d'état</status>
 <status id="3">Administration territoriale</status>
 <status id="4">Administration hospitalière</status>
 <status id="5">Entreprise publique</status>
 <status id="6">Association</status>
 <status id="7">Autre (profession libérale, ONG...)</status>

</statusList>

Pour chaque balise <status>, on a :

Le fichier themes.xml


Le fichier properties/custom/themes.xml permet de définir les choix de thématique de stage dans une convention de stage

Ce fichier est à personnaliser selon les thématiques souhaitées.

<themes>
 <theme id="1">AMENAGEMENT/URBANISME/ENVIRONNEMENT</theme>
 <theme id="2">ART/PATRIMOINE</theme>
 <theme id="3">COMMERCE INTERNATIONAL/MARKETING</theme>
...

</themes>

Pour chaque balise <theme>, on a :

Autres fichiers personnalisables


Les messages d'erreurs de l'application peuvent être modifiés si nécessaire dans le fichier properties/messages/error_fr.properties : veillez toutefois à ne pas supprimer ou dupliquer un message d'erreur.

Certains messages de l'applications peuvent être modifiés si nécessaire dans le fichier properties/messages/messages_fr.properties : veillez toutefois à ne pas supprimer ou dupliquer un message.

Les libellés des rubriques apparaissant lors de l'impression des offres sous format Pdf peuvent être modifiés si nécessaire dans le fichier properties/messages/offer.properties : veillez toutefois à ne pas supprimer ou dupliquer un identifiant.

Déploiement


Préparation du déploiement : modifier les chemins d'installation du fichier build.properties.

Si vous aviez déjà installé le portlet, lancez la commande ant undeploy, pour effacer toute trace du canal dans l'environnement de production.
Si vous aviez déjà compilé le portlet, lancez la commande ant clean, pour effacer toute trace dans le répertoire build.
Lancement de la commande ant deploy, pour déployer le canal dans les bons répertoires.
Vous pouvez également lancer la commande ant all pour effectuer toutes ces étapes en une seule fois .

L'administrateur peut maintenant publier le portlet dans le portail. Pour cela, il y a 2 méthodes :
La plus simple étant de publier le canal de manière normale, par l'interface WEB prévue à cet effet.
La seconde étant d'utiliser la commande ant pubchan (Cette méthode remplace toute la démarche de publication).
Recopier le fichier properties/esup-pstage-pubchan.xml dans le répertoire {uPortal}/properties/chanpub du portail.
Ensuite, lancez la commande ant pubchan -Dchannel=esup-pstage-pubchan.xml depuis le répertoire "racine esup".

Mise à jour depuis la version 0.7.6


Si vous avez déjà installé la version antérieure 0.7.6 du portlet Stages-Emplois, vous pouvez mettre à jour sans tout réinstaller.

La version 0.8 correspond à la mise en oeuvre des codes NAF 2008 définis par l'INSEE en janvier 2008.

Un code NAF 2003 (version des codes NAF utilisée par les versions de Stages-Emplois antérieures à 0.8) correspond en général à plusieurs codes NAF 2008 : la mise à jour des codes NAF implique donc une suppression des codes NAF déjà stockés dans votre base de données, puis une saisie de ces codes NAF dans la version 2008, sauf pour quelques codes qui sont automatiquement mis à jour avec la nouvelle nomenclature par le script (concerne environ 120 codes dont le taux de basculement d'un code NAF 2003 à un code NAF 2008 est de 100%).

Pour mettre à jour le portlet Stages-Emplois, vous devez :