Installation esup-example-quick-start portlet

Transcription

Installation esup-example-quick-start portlet
Installation d’esup-example-quick-start (en portlet)
L’installation d’esup-example-quick-start en portlet est très proche de celle pour
servlet, seuls quelques fichiers de configuration et la façon de l’exécuter différent. La
première partie de cette installation reprend toute la procédure comme si vous n’aviez pas
installé esup-example-quick-start en servlet précédemment. La deuxième partie expliquera
comment transformer son ‘example-quick-start servlet’ en ‘example-quick-start portlet’. Puis
nous finirons sur la procédure d’utilisation de la portlet dans esup-portail.
1er partie : installation complète :
Pré requis : avoir installé l’environnement esup-portail (par exemple esupdev2.5)
Il faut tout d’abord installer esup-commons et esup-example sur Eclipse (voir site
esup-commons)
Téléchargez esup-example-quick-start sur le site d’esup-commons. Le dézipper dans un
répertoire esup-example-quick-start (par exemple dans c:/devel/esup-example-quick-start si
esup-commons est dans c:/devel/esup-commons).
Sous Eclipse, faire un nouveau projet java depuis le répertoire c:/devel/esup-example-quickstart et appeler le projet esup-example-quick-start bien sur. Cliquer sur Next, puis dans
l’onglet ‘projet’ ajouter le projet esup-commons et cliquer sur Finish. Vérifier que le
répertoire source pour le projet est bien esup-example-quick-start/src (clic droit sur le projet,
buildPath, ConfigureBuildPath, onglet Source) le modifier si ce n’est pas le cas. Vous avez
maintenant votre projet sous eclipse.
Ensuite, il faut suivre les étapes suivantes :
-‘récupérer’ tous les fichiers ‘properties’ : Dans les répertoires du dossier ‘properties’
se trouve des fichiers de configuration (xml), ex : auth-example.xml qu’il faut copier
renommé sans ‘-example’. Faire cette manipulation pour tous les *-example.xml du dossier
properties (de cache-example.xml à tags-example.xml en passant par init-example.xml)
-dans webapp/WEB-INF copier web-portlet-example.xml en web.xml
-à la racine copier build-quick-start-example.properties en build.properties. Puis le
modifier de la manière suivante : décommenter ‘quick-start=true’ ou le mettre à false ; ajouter
‘deploy.type=portlet’ ainsi que les variables deploy.home (votre ‘uportal-quickstart/webapps’ de l’installation d’esup-portail auquel vous rajoutez ‘/esup-example’) et
tomcat.home (votre ‘uportal-quick-start/tomcat’ de l’installation d’esup-portail) correctement
renseignées.
-copier le repertoire properties/auth d’esup-commons dans le repertoire properties de
votre esup-example-quick-start et copier auth-example.xml en auth.xml. Faites de même pour
le répertoire urlGeneration, et le répertoire export ( export est présent dans le projet esupexample)
-configurer properties/dao/hibernate/hibernate-cfg.xml pour donner le nom de sa base
mysql (esup-example par exemple ) et son login/password de connection à Mysql.
-dans urlGenerator.xml enlever le suffixe .portlet de urlGenerator.portlet dans l’id du
bean. Si on choisissait de déployer en servlet il faudrait enlever le .servlet et non le .portlet
-mettre son login nancy2 dans le init.xml à la property du nom « firstadministratorId ».
Ce login deviendra celui de l’administrateur dans la base MySql.
-ajouter le keystore esup.portail.keystore dans utils/cas et faire la modification dans
build.properties pour que tomcat.keystore prenne ce keystore
- La manipulation qui suit évite de se connecter au ldap pour créer l’admin dans la
base MySql ; cependant vous n’êtes pas obligé de la faire si vous effectuez les modifications
du ldap.xml décrites à la fin du tuto:
dans src/org/esupportail/example/domain/DomainServiceImpl.java et dans la méthode
getUser(), commenter les lignes :
LdapUser ldapUser = this.ldapService.getLdapUser(id) ;
Et
setUserInfo(user,ldapUser)
et remplacer user.setId(ldapUser.getId()) ;
par
user.setId(id) ;
-lancer le ant init pour remplir la base Mysql (penser à créer la base dans MySql avant)
Rappel : les informations sur cette base sont dans le properties/dao/hibernate/hibernatecfg.xml
Si tout se passe bien, 5 tables ont été créées dans votre base MySql et notamment la table
‘d_user’ qui contient une ligne avec votre login nancy2 dans la colonne id et 1 pour la valeur
de la colonne ‘admi’
-modifier le domain.xml pour avoir comme ‘uploadDirectory’ le répertoire c:/temp
-dans portal.xml changer l’id du bean portalService.portet en portalService.
-Vérifiez que vous avez le bean ‘remoteInformation’ dans domain.xml. Si ce n’est pas
le cas c’est que vous n’avez pas la dernière version de ce fichier. Récupérez donc la
déclaration de ce bean dans le domain.xml du projet esup-example par exemple et coller la
avant la balise </beans> à la fin du fichier.
-modifier web.xml pour avoir ‘auth.univ-nancy2.fr’ à la place de ‘cas.domain.edu’.
-modifier
urlGereneration.xml
pour
avoir
‘https://auth.univnancy2.fr/login ?service=%s’ pour la property ‘casLoginUrl’ ; ‘esup-example’ pour
‘uportalFunctionnalName’ et ‘http://auth.univ-nancy2.fr/Login’ pour’uportalUrl’
-Dans ldap.xml : Modifier la valeur de la properties ‘url’ ; elle passe de
‘ldap://ldap.esup-portail.org :389’ à ‘ldap://ldap1.univ-nancy2.fr:392’. Modifier la valeur de
la properties ‘base’ ; elle passe de ‘ou=people,dc=esup-portail,dc=org’ à ‘dc=univnancy2,dc=fr’
-rajouter le fck-faces-1.7.26.jar dans le webapp/web-inf/lib
-copier le fichier webapp/WEB-INF/portlet-example.xml en portlet.xml
-Vous pouvez passer à l’étape 3.
2em partie : passage du déploiement servlet en portlet :
Pré requis : avoir installé l’environnement esup-portail (par exemple esupdev2.5),
ainsi qu’esup-example-quick-start en servlet.
Voici comment modifier votre projet eclipse esup-example-quick-start configuré en
servlet pour le déploiement portlet :
-Dans webapp/WEB-INF sauvegarder le fichier ‘web.xml’ en ‘web-servelt.xml’ et
copier le ‘web-portlet-example.xml’ en ‘web.xml’
-Toujours dans webapp/WEB-INF copier le fichier ‘portlet-example.xml’ en
‘portlet.xml’
-Dans properties/urlGeneration/ sauvegarder le fichier ‘urlGeneration.xml’ en
‘urlGeneration-servlet.xml’ et modifier ‘urlGeneration.xml’ de la manière suivante : remettre
l’id du bean ‘urlGenerator’ en ‘urlGenerator.servlet’, et mettre l’id du bean
‘urlGenerator.portlet’ en ‘urlGenerator’. Puis modifier pour avoir ‘https://auth.univnancy2.fr/login ?service=%s’ pour la property ‘casLoginUrl’ ; ‘esup-example’ pour
‘uportalFunctionnalName’ et ‘http://auth.univ-nancy2.fr/Login’ pour’uportalUrl’
-Dans properties/portal/ sauvegarder le fichier ‘portal.xml’ en ‘portal-servlet.xml’et
modifier ‘portal.xml’ de la manière suivante : remettre l’id du bean ‘portalService’ à
‘portalService.servlet’ et mettre l’id du bean ‘portalService.portlet’ à ‘portalService’.
-Dans properties/domain sauvegarde le fichier ‘domain.xml’ en ‘domain-servlet.xml’
et modifier ‘domain.xml de la manière suivante : remettre ‘esup-example/’ entre
‘localhost :8080/’ et ‘xfire/Information’ dans les property ‘wsdlDocumentUrl’ et ‘url’ du bean
‘remoteInformation’.
-modifier le fichier ‘build.properties’ de la manière suivante : commenter la ligne
quick-start=true (ou mettre quick-start=false), ajouter ‘deploy.type=portlet’ ainsi que les
variables deploy.home (votre ‘uportal-quick-start/webapps’ de l’installation d’esup-portail
auquel vous rajoutez ‘/esup-example’) et tomcat.home (votre ‘uportal-quick-start/tomcat’ de
l’installation d’esup-portail) correctement renseignées.
-Vous pouvez passer à l’étape 3.
3em partie : Installation de la portlet dans esup-portail :
C’est fini, vous pouvez déployer l’application grâce à la tache ant ‘deploy’ qui va
déployer l’application dans le webapps de votre tomcat installé pour esup-portail (que vous
avez indiqué dans le build.properties). Assurez vous ensuite que le fichier ‘esup.properties’
d’esup-portail’ est bien configuré pour la ldap (à ‘true’ plus le host, le port et baseDN), le cas
(à ‘true’ plus le host), et le hostvirtuel(‘localhost’ et ‘:8080’ pour le ‘host’ et le ‘port’).
Ajouter le context de la portlet dans le conf/server.xml du tomcat d’esup-portail. Vous pouvez
maintenant lancer votre esup-portail (‘start-esup.cmd’ peut-être précédé de ‘ant esup.init’ et
‘ant esup.deploy’ si vous venez juste de modifier le ‘esup.properties’. Il ne reste plus qu’à
vous connecter au portail (localhost :8080/uPortal en général) à importer la portlet (‘publish a
new channel’) et à l’ajouter à votre page d’accueil (menu préférences).
A noter que dans ces conditions (portlet), vous ne disposerez pas de la css de la servlet car une
portlet ne peut importer une css. Cependant vous pouvez modifier la css destinée au portlet du
portail :
‘webapps\uPortal\media\org\jasig\portal\layout\AL_TabColumn\integratedModes\esup\skin\
esup_portlet.css’
En y remplaçant le code par celui de ‘webapps\esup-example\media\portlet.css’ (puis il faut
également y changer le path vers l’image banner.jpg en ‘../skin/images/banner.jpg’)et en
copiant le répertoire images de ‘webapps\esup-example\media’ dans
‘webapps\uPortal\media\org\jasig\portal\layout\AL_TabColumn\integratedModes\esup\skin’.
Vous aurez maintenant la bonne css pour votre portlet mais cela affectera toutes les portlets
du portail

Documents pareils