Pages enfant
  • 1.3 Découverte avec esup-example

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.

...

Cliquer sur Finish et il construit tous les projets.
Ceci permet de lier le projet à ses dépendances Maven déclarées dans les fichiers pom.xml situé dans chaque modules. Il créé un répertoire .m2 s'il n'existe pas. Enfin un petit "M" apparait sur l'icône du projet Image Modified )

On constate que cette tâche entraîne le téléchargement de toutes les librairies nécessaires c'est pourquoi elle peut-être relativement longue suivant le nombre de librairies pré-existantes dans votre répertoire .m2 (téléchargées pour d'autres projets)

...

Remarque
titleA compléter

Concernant le serveur embarqué

Via Eclipse : Lancer le projet par un clic-droit sur le projet Run AS => Run configurationsMaven build...Sélectionner "Maven Build" => "Add" (ou double-clic) puis Choisir le répertoire esup-example et et choisir l'action jetty:run

Image Modified

Image Modified

On pourra modifier par Run => Run configurations... et sélectionner "Maven Build"

Lancer la commande.

Au premier démarrage on constate dans la console le téléchargement d'un certain nombre de librairies et la création d'une base de données(1637 INFO org.hibernate.tool.hbm2ddl.DatabaseMetadata - table not found: User
1639 INFO org.hibernate.tool.hbm2ddl.SchemaUpdate - schema update complete).

...

Et vérifier que l'authentification fonctionne

Découverte

Une fois authentifié on arrive sur ceci :

Image Removed

Volet CAS Demo

Le libellé CURRENT.USER n'est pas déclaré et traduit ?

On constate :

Bloc de code
????? CURENT.USER ?????
Remarque
titleA compléter

Concernant l'internationalisation

Dans les logs on voit le message :

Bloc de code
2010-11-24 15:58:45,780 WARN [org.esupportail.commons.services.i18n.BundleMap] -
no string found for key 'CURRENT.USER' and locale 'fr'

Dans properties/i18n/bundles ouvrir Custom_fr.properties et Custom_en.properties
Et y ajouter respectivement les entrées :

Bloc de code
CURRENT.USER = Utilisateur courant

Et

Bloc de code
CURRENT.USER = Current user

Vérifier que c'est bon désormais

On ne récupère que l'uid ?

Dans les logs on a :

Bloc de code
2010-11-24 16:00:18,118 DEBUG [org.esupportail.example.services.authentication.AuthenticatorImpl] -
found auth info in session: User#25411576[id=[cbissler], displayName=[null], admin=[false], language=[null]]

On vérifie dans AuthenticatorImpl.java, rien d'anormal on ne positionne que l'UID et on n'interroge pas le LDAP

Affichage se fait dans /src/main/webapp/stylesheets/welcome.jspx

Bloc de code
<rich:panelBarItem label="CAS demo" name="CAS">
	<h:outputText value="#{msgs['CURRENT.USER']} #{welcomeController.currentUserId}"/>
</rich:panelBarItem>

Depuis WelcomeController.java suivre la récupération de l'utilisateur on retombe dans la méthode getUser de AuthenticatorImpl.java
WelcomeController -> AbstractContextAwareController (getCurrentUser) -> SessionController (getCurrentUser) -> Authenticator (getUser)

Pourquoi affiche-t-on "Nom – USER" ?

Suivre depuis /src/main/webapp/stylesheets/welcome.jspx et arriver sur /src/main/webapp/stylesheets/_include/_header.jspx
welcome.jspx (l.10)? template.jspx ? _include/_header.jspx

Bloc de code
<t:outputText value="Nom - USER" styleClass="span_currentUser"  />

Donc c'est en dur tout est normal

Volet Ajax Demo

Remarque
titleA compléter

Concernant les librairies de vues etc.

Lorsque l'on tape quelque chose dans le champ ça le reporte en même temps à côté.

Volet Exception demo

Cliquer sur le bouton "test exception" le mot ERROR s'affiche !

Envoyer la levée d'exception par mail

On constante l'erreur dans les logs de la console suivie de :

Bloc de code

ERROR [org.esupportail.commons.services.smtp.SmtpUtils] - an exception occured while sending the email to '"Liste devel
(normally sent to bugs@domain.edu)" <example-devel@liste.domain.edu.fr>' using SMTP server 'smtp.univ-rennes1.fr:25'.
ERROR [org.esupportail.commons.services.smtp.SmtpUtils] - javax.mail.MessagingException: Could not connect to SMTP host:
smtp.univ-rennes1.fr, port: 25;
[...]

Corriger dans config.properties

Bloc de code
########################################################################
# SMTP
#

smtp.host=persmail.uhp-nancy.fr
smtp.user=login
smtp.password=xxxx
smtp.fromEmail=admin.email@univ.fr
smtp.fromName=ESUP-Portail Example
smtp.interceptAll=true
smtp.interceptEmail=admin.email@univ.fr
smtp.interceptName=Liste devel

Retenter et constater qu'un mail est bien parti.

Image Removed

Loguer les erreurs/messages dans un fichier

Dans config.properties on constate ceci :########################################################################

  1. LOGGING

log.level=WARN
log.output=stdout
log.pattern=%d %p %c - %m%n
log.file=D:/esup-example.log

Lorsque l'on change ceci cela n'a aucun effet, si on regarde dans le war ces valeurs ne sont pas prises en compte.

Avertissement

Cette partie doit être supprimée

En revanche dans profiles.xml<profiles>
<profile>
<id>developpement</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<properties>
<deploy.type>servlet</deploy.type>
<cas.url>https://sso-cas.univ-rennes1.frImage Removed</cas.url>
<tomcat.host>localhost</tomcat.host>
<tomcat.port.string>:8080</tomcat.port.string>
<log.level>INFO</log.level>
<log.output>stdout</log.output>
<log.file>/tmp/esup-blank.log</log.file>
<cache.path>/tmp/esup-blank</cache.path>
</properties>
</profile>
<profile>
<id>test</id>
<properties>
<deploy.type>servlet</deploy.type>
<cas.url>https://sso-cas.univ-rennes1.frImage Removed</cas.url>
<tomcat.host>localhost</tomcat.host>
<tomcat.port.string>:8080</tomcat.port.string>
<log.level>INFO</log.level>
<log.output>file</log.output>
<log.file>/tmp/esup-blank.log</log.file>
<cache.path>/tmp/esup-blank</cache.path>
</properties>
</profile>
</profiles>

Si on adapte la partie developpement qui est actif par défaut en mettant un log.output=file et le chemin vers le log.file ça marche

Remarque

A quoi sert le <cas.url>https://sso-cas.univ-rennes1.fr</cas.url>? Si on modifie ici quel impact?

...

Fonctionnement des profiles Maven

Changer le nom de l'application

Le mais est annoncé comme provenant de l'application esup-blank et on constate également que le titre de la page est esup-blank.

Pour cela modifier dans /src/main/resources/misc/application.xml (ligne 27) la balise :

Bloc de code
<property name="name" value="esup-blank">...

en

Bloc de code
<property name="name" value="esup-example">...

Constater que le titre de la page a changé et que le mail envoyé lors de l'exception est bien intitulé "esup-example 0.0.1".

On changera également dans /src/main/webapp/WEB-INF/web.xml (ligne 9)

Bloc de code
<display-name>esup-example</display-name>
Remarque

Où apparait ceci? quel impact?

Volet JPA demo

Remarque
titleA compléter

Concernant hibernate, JPA

Ajout d'une entrée dans une table

Essayer d'ajouter, modifier ou supprimer un utilisateur.

Essayer le fonctionnement du paginateur.