Vous êtes sur la page 1sur 139

Intranet / Extranet

Reda CHERIF ZAOUI

reda_cz@yahoo.com

Plan
Nouvelle gnration des systmes d'information ouverts sur Internet.
Technologies web pour le B2C, B2B
Portails comme solution Intranet/Extranet.
Administration du portail :
Changement de la BD (Postgres)
Gestion des utilisateurs/groupes
Gestion des pages publiques/prives
Gestion des portlets
Communaut internes et externes
Dploiement de Portlets
JSR-168
Portlet d'administration (internes) et de consultation (externes)
Exemple complet.

Nouvelle gnration des systmes d'information


ouverts sur Internet

Dfinition 1 :
Ensemble de moyens techniques, administratifs, et
humains qui servent la collecte, au classement et la transmission
d'informations entre les membres d'une organisation (institution,
entreprise, association,..)

Dfinition 2 :
Le systme d'information d'une organisation (socit,
entreprise, institution, club, groupe structur ...) regroupe tout ce qui
quelque niveau que se soit traite ou stocke des informations
relatives l'organisation concerne.

Structures possibles dun systme dinformation :


1.
2.
3.
4.

Structure non informatique


Applications spcifiques
ERP
Internet/Intranet/Extranet

1. Structure non informatique :


Documents, procdures, manuels, rapports, comptes rendus, tableaux
de bord, fiches de postes, procdures, courriers, factures
Sans oublier la composante humaine !

2. Applications spcifiques :
Ou encore : non standards, de conception maison , dvelopps sur
mesure, que l'on ne trouve pas sur le march,
On rencontrera ces applications dans les domaines du calcul de cots,
de la facturation, de l'aide la production, ou de fonctions annexes.

3. ERP :
Un ERP : Enterprise Resource Planning (en franais : PGI pour
progiciel de gestion intgr) Application qui intgre tous les systmes
informatiss permettant de soutenir le fonctionnement de l'entreprise.

3. ERP (un ou plusieurs) :


Une entreprise peut tre quipe de plusieurs progiciels
diffrents selon ses domaines d'activit. Dans ce cas, les progiciels ne
sont pas totalement intgrs comme dans un PGI, mais interfacs
entre eux.
On trouvera par exemple des applications de :
CRM - Customer Relationship Management : regroupe toutes les
fonctions permettant d'intgrer les clients dans le SI de l'entreprise
HRM - Human Resource Management
Etc

10

4. Internet et ses 2 drivs : Intranet & Extranet

11

Internet

12

LInternet correspond l'interconnexion de rseaux dans le monde.


L'ide de base derrire l'Internet et ses 2 drivs, l'Intranet et
l'Extranet, est de disposer d'une interface simple et trs facile
d'emploi, le navigateur, pour chercher de l'information et
communiquer.
Pour chaque entreprise, Internet reprsente un potentiel
particulirement attirant pour capter de nouveaux clients,
promouvoir son savoir-faire et plus gnralement dvelopper son
chiffre d'affaires.
Internet fait cependant appel un rseau public, sans grande
garantie de scurit ou de qualit de service.

13

Intranet

14

Dfinition :
Un intranet est un ensemble de services Internet internes
un rseau local, c'est--dire accessibles uniquement partir des
postes d'un rseau local, ou bien d'un ensemble de rseaux bien
dfinis, et invisibles (ou inaccessibles) de l'extrieur.

Un Intranet consiste utiliser les standards client serveur


de lInternet (en utilisant les protocoles TCP/IP), comme par exemple
l'utilisation de navigateurs Internet et des serveurs web, pour raliser
un systme d'information interne une organisation ou une
entreprise.

15

Un intranet repose gnralement sur une architecture trois


niveaux, compose de:
Clients (navigateur Internet gnralement)
Un ou plusieurs serveurs dapplication
Un serveur de bases de donnes
Le rseau permet de vhiculer les requtes et les rponses.

16

Utilit :
Mettre facilement la disposition des employs des documents
divers et varis; cela permet d'avoir un accs centralis et cohrent la
mmoire de l'entreprise, on parle ainsi de capitalisation de connaissances.
Ncessit de dfinir des droits d'accs pour les utilisateurs de
l'intranet aux documents prsents sur celui-ci, et par consquent une
authentification de ceux-ci afin de leur permettre un accs personnalis
certains documents.
Des documents de tous types (textes, images, vidos, sons, ...)
peuvent tre mis disposition sur un intranet. De plus, un intranet peut
raliser une fonction de Groupware trs intressante, c'est--dire
permettre un travail coopratif.

17

Utilit :
Mise disposition d'informations sur l'entreprise (panneau d'affichage)
Mise disposition de documents techniques
Moteur de recherche de documentations
Un change de donnes entre collaborateurs
Annuaire du personnel
Gestion de projets, aide la dcision, agenda
Messagerie lectronique
Forums de discussion, listes de diffusions, chat
Visioconfrence
Un intranet favorise la communication au sein de l'entreprise et limite les
erreurs dues la mauvaise circulation d'une information.

18

Extranet

19

Dfinition:
Un Extranet est une extension du systme d'information de
l'entreprise des partenaires situs au-del du rseau.
Un Extranet n'est donc ni un Intranet, ni un site Internet. Il s'agit
d'un systme supplmentaire offrant par exemple aux clients d'une
entreprise, ses partenaires ou des filiales, un accs privilgi
certaines ressources informatiques de l'entreprise par l'intermdiaire
d'une interface Web.

20

Scurit :
L'accs lExtranet doit tre scuris dans la mesure o cela
offre un accs au systme d'information des personnes situes en
dehors de l'entreprise.
Lauthentification : Il peut s'agir soit d'une authentification simple
(authentification par nom d'utilisateur et mot de passe) ou d'une
authentification forte (authentification l'aide d'un certificat).
Il est conseill d'utiliser HTTPS pour toutes les pages web consultes
depuis l'extrieur afin de scuriser le transport des requtes et des
rponses HTTP.
Liste de scurit, gre en interne, est l'ensemble des donnes
regroupant les identifiants (nom d'utilisateur (login), adresse IP, adresses
MAC, clefs logiques ou physiques) autoriss se connecter.
21

Utilit :
LExtranet est loutil indispensable pour tisser un lien concret
entre lentreprise, ses clients, ses partenaires et ses fournisseurs pour :
Optimiser en permanence lapprovisionnement de ses distributeurs.
Offrir un espace de travail et de documentation personnaliss.
Faciliter la coordination entre vos actions et celles vos partenaires.
Permettre vos clients de suivre leurs commandes.
Mettre disposition vos services directement sur Internet,...

22

Inconvnients dune telle structure :


Cot de fonctionnement lev
Architecture complexe, non optimise
Informations redondantes ou non rpertories
Ncessit dun accs commun linformation !

23

Technologies web pour le B2C, B2B

24

E-Business
Dfinition :
Les diffrentes applications possibles de l'informatique faisant appel
aux technologies de l'information et de la communication (TIC) pour
traiter de faon performante les relations de communication
d'information d'une entreprise avec lextrieur.

Les technologies utilises sont principalement celles de l'Internet et du


Web.

25

Relation avec lextrieur :

26

Les applications de lE-Business ne se limitent pas l'change externe


d'informations. Elles doivent permettre une articulation troite
(intgration) avec les processus internes l'entreprise (production,
stocks, vente, comptabilit, etc.);

E-Business Commerce lectronique (E-Commerce)

27

De faon synthtique, pour une organisation, un projet E-Business


consiste dcider:
La mise en place de canaux de communication lectronique
destination de son environnement (clients, fournisseurs ou partenaires).
Interfaage ces canaux avec les processus internes (back-office).

28

Organisation dun projet E-Business

29

Les moteurs de l'E-Business :

La gestion moderne des entreprises repose sur deux piliers:


La gestion oriente client (customer driven management),
Le recours aux Technologies de l'Information et de la Communication
(TIC) et aux Systmes d'Information (SI).

30

1 - La gestion oriente client :

31

2 - Les Technologies de l'Information et de la Communication (TIC) :


des rseaux de tlcommunication fixe ou mobile,
l'Internet et ses principaux services (messagerie lectronique, le
Web, les transferts de fichiers),
la gestion des processus,
la scurit.

32

2 - Les Technologies de l'Information et de la Communication (TIC) :


Analyse et conception OO
Architectures techniques (N-Tiers, Distribue)
Utilisation de frameworks
Environnements de dveloppement et dexploitation. (IDE, AS,
SGBD)
Protocoles de communication (TCP/IP)
Structures et transfert des donnes (XML/EDI)
quilibrage ou rpartition de charge (Load Balancing)
Grappe de serveurs (Clustering)

33

Choix stratgique et la proposition de Valeur

Toute entreprise qui construit un projet e-business doit ds lors estimer


la proposition de valeur (value proposition) qu'il contient :
L'ensemble des lments de cration de valeur pour les diffrentes
parties concernes par le projet devraient tre suprieurs aux
inconvnients et aux cots engendrs.

34

Pour ses clients par les perspectives lies :


la baisse des prix (gains de productivit);
la souplesse et la rapidit des transactions;
la qualit/fiabilit des produits et services;
au renforcement de l'offre;
l'amlioration du service aprs-vente;
etc

35

Pour ses partenaires (fournisseurs, sous-traitants, partenaires


financiers, etc.) par :
la rationalisation des procdures;
l'anticipation des besoins;
le partage de ressources matrielles ou immatrielles;
etc

36

Pour l'entreprise : augmenter ses revenus et/ou diminuer ses cots via:
l'ouverture de nouveaux marchs;
l'amlioration de la qualit des produits et services;
l'amlioration de l'image de marque;
le dveloppement de nouvelles activits;
la rationalisation des procdures;
etc

37

Pour son personnel : augmenter sa satisfaction et sa motivation par :


une organisation du travail plus souple;
une perception accrue du travail de groupe;
le dveloppement du sens de l'initiative;
l'augmentation des connaissances et des comptences;
etc

38

Modles E-Business

Il convient d'analyser les diffrents modles dE-Business en fonction


de la cible que l'entreprise veut atteindre par le canal de communication
lectronique

39

B2C
Dfinition :
Ou encore le e-commerce concerne l'utilisation de supports
lectroniques pour tout ou partie des relations commerciales entre une
entreprise et les particuliers:

40

B2B
Dfinition :
Concerne l'utilisation de supports lectroniques pour tout ou partie des
changes d'information d'une entreprise avec d'autres entreprises:
fournisseurs, sous-traitants, clients, prestataires de services,
organismes financiers, etc.

41

B2A

Dfinition :
Ou encore B2G concerne l'utilisation de supports lectroniques pour
tout ou partie des changes d'information entre des entreprises et
des administrations publiques en vue de l'tablissement et de
l'excution de marchs publics.

42

E-Gov

Dfinition :
Les diffrentes applications possibles de l'informatique faisant appel
aux technologies de l'information et de la communication (TIC) pour
traiter de faon performante les relations de communication
d'information d'une entreprise avec ladministration.

43

Intermdiation

Dfinition :
Concerne les activits que les acteurs metteurs ou rcepteurs de ces
informations ne peuvent pas ou ne veulent pas assumer et dont ils
confient la ralisation une entit tierce.

44

Schma rcapitulatif

E-Business

E-Gov

45

Le portail comme solution

46

Suite la perce de l'informatique dans les administrations et les


entreprises, ces dernires ont vus leurs applications se multiplier
au point de devenir complexes en gestion et maintenance.

L'ide du portail correspond un point d'accs unique intgrant


l'ensemble des applications utilises

47

Solution portail

48

Portail

Dfinition :
Le portail au sens moderne est une application web contenant un
ensemble de sous applications (portlet) intgres et configurables.

Un portail est donc comme son nom l'indique une ouverture sur le
systme d'information de l'entreprise d'une faon conviviale pour
l'utilisateur final.

49

Portail

Fonctionnellement : un portail est une application web


permettant d'agrger du contenus.
Il permet de centraliser diffrentes sources d'information sur une
unique page, chaque source d'information tant reprsente par un
portlet.
Techniquement : un portail est un conteneur.
Ce conteneur manipule les portlets et leur fourni un environnement
d'excution : Il les positionne sur les pages, il gre leurs cycles de
vie, etc....

50

51

Portlet

Dfinition
Un portlet est un composant web unitaire s'intgrant au sein d'un
conteneur (portail).
Chaque portlet est indpendant des autres et peut-tre imagin
comme une application WEB au sens J2EE (d'ou l'ide de
composant web unitaire).
Les portlets se basent sur une API dfinie par la spcification JSR
168 (286) qui a pour objectif de standardiser les portlets et
d'assurer une interoprabilit entre les diffrents portails du
march.

52

iGoogle

53

iGoogle

54

iGoogle

55

iGoogle

56

iGoogle

57

iGoogle

58

iGoogle

59

Solutions portail

60

Solutions portail disponibles (payantes)

61

Solutions portail disponibles (gratuites)

62

Liferay comme solution portail

- Facilit dutilisation :
Manipulation des pages et des portlets par simple clic ou
drag&drop.
- Support dune grande varits dapplications :
Liferay fournis une grande varit dapplications laquelle on
peut ajouter nos propres applications.
- Licence libre et code Open Source :
Liferay Inc. gagne de largent travers la vente de support et
de formations.
- Extensibilit
Possibilit dajouter de nouvelles fonctionnalits sans changer
le code source -> facilit de migration vers les versions
ultrieures.

63

Liferay comme solution portail

- volutivit :
Possibilit de gestion dun grand nombre dutilisateurs.
- Support de linternationalisation :
Possibilit dutiliser dautres langues avec beaucoup de
facilits.
- Intgration avec dautres outils :
Supports dune grande varits doutils tiers : outils de CMS,
serveurs LDAP, de base de donnes, etc
- Adhrence aux standards :
Bas sur des standards, il sintgrent donc parfaitement aux
autres standards : Hibernate, Spring, jQuery, Lucene, etc
64

Structure interne dune page

65

Gnration dune page

66

Traitement dune requte

67

Portlets et Servlets

Points communs

Les servlets et les portlets sont des composants bass sur le


langage Java pour leur implmentation
Les portlets comme les servlets voluent au sein d'un conteneur
Ces deux composants gnrent du contenu (statique ou
dynamique).
Ils ont tous les deux un cycle de vie contrl par leur conteneur et
de la mme faon.
La smantique concernant les objets resquet et response est
identique.

68

Portlets et Servlets
Divergences

Un servlet gnre une page complte tandis que la portlet a pour


vocation de ne gnrer qu'un fragment de page.
Un portlet peut gnrer du code HTML sans inclure , de manire
rigoureuse, les tags : base, body, frame, frameset, head, html ou title.
A la diffrence d'un servlet, un portlet ne peut tre invoqu
directement via un URL.
La communication entre le client et le portlet est entirement gre
par le portail.

69

Portlets et Servlets
Divergences

Le portlet permet de grer un tat et un mode d'affichage.


Plusieurs instances d'une portlet peuvent tre places dans
une mme page.
Deux scopes sont supports dans l'objet de session : le
scope Portlet application et le scope portlet.
Le portlet ne peut pas initialiser l'encodage de caractre de la
rponse faite au client.
Le portlet ne peut pas crire d'information dans le header de
l'entte HTTP sur la rponse faite au client.

70

Modes & tats

71

Modes

Les modes dusage dun portlet peuvent tre:


- View (affichage des donnes du modle) ;
- Edit (modification des prfrences de lutilisateur sur la portlet) ;
- Help (aide associe la portlet) ;
- About (description de la portlet) ;
- Config (configuration de la portlet) ;
- Preview (visualisation de la portlet avant acceptation des
modifications) ;
- Print (Impression des donnes affiches dans la portlet) ;
- Il peut y en avoir dautres constructeur .

72

tats

Les tats dun portlet peuvent tre :


- Normal (la portlet partage lcran selon la mise en page choisie) ;
- Maximized (la portlet prend tout lcran) ;
- Minimized (on ne voit que la barre de menu de la portlet) ;
- Closed (supprime la portlet de la page, elle peut tre ractive
travers le menu de prfrences associ la page).

73

Liferay : Administration

74

Liferay : Ressources

75

Liferay : Ressources

76

Changement de la base de donnes

- Installation et lancement de Postgres.


- Cration de la Base de donnes et du rle utiliser.
- Localisation de la librairie suivante :
<LIFRERAY_HOME>\<CATALINA_HOME>\webapps\ROOT\WEBINF\lib\portal-impl.jar.
- Rcupration du fichier : portal.properties, de la librairie localise.
- Cration du fichier : portal-ext.properties, partir du fichier
prcdent, avec uniquement les proprits remplacer.
- Sauvegarde du fichier sous :
<LIFRERAY_HOME>\<CATALINA_HOME>\webapps\ROOT\WEBINF\classes
- Dmarrage de Liferay -> Cration automatique de la base de
donnes.
77

Changement de la base de donnes

#Configuration de Postgres
jdbc.default.driverClassName=org.postgresql.Driver
jdbc.default.url=jdbc:postgresql://localhost:5432/lportal
jdbc.default.username=postgres
jdbc.default.password=postgres
#Gnration automatique de la base de donnes
schema.run.enabled=true
schema.run.minimal=true

78

Supprimer

hsql

Supprimer

Serv-hook
Serv - theme
Wol-portlet
Apres demarrer tomcat
test@liferay..... Mot de passe : test

79

Changement de la base de donnes


Premire connexion lapplication

80

Gestion des utilisateurs/groupes


Panneau de contrle

81

Gestion des utilisateurs/groupes


Cration dune organisation

82

Gestion des utilisateurs/groupes


Cration dun utilisateur

83

Gestion des utilisateurs/groupes


Rles

84

Gestion des utilisateurs/groupes


Cration dun groupe dutilisateurs

85

Gestion des utilisateurs/groupes


Affectation dun utilisateur un groupe

86

Gestion des utilisateurs/groupes


Affectation dun utilisateur une organisation

87

Gestion des pages / portlets

88

Pages publiques et prives

89

Pages publiques et prives

Pages accessibles via le menu : Mes emplacements (ou My Places)


Ma communaut (ou My community) :
Contient les pages propres lutilisateur publics ou prives
Guest :
Contient les pages de la communaut : Guest
Possibilit davoir des pages pour dautres communauts ou encore
organisations.

90

Cration de pages et de pages filles publiques et prives

91

Types de pages

92

Types de pages

-Portlet : page destine contenir plusieurs portlet.


-Panel : page contenant des portlets sous forme de panel.
-Embedded : page destine contenir une autre page donne par
son URL.
-Web content : page affichant un web content donn par son ID.
-URL : page qui pointe vers une page externe au portail.
-Lin to a page : page qui pointe vers une page interne au portail.
93

Plugin installer

94

Plugin installer : installation partir dun fichier

95

Installation partir dun fichier

Installation de :
- Thme : transparentia-theme-5.2.0.1.war
- Portlet : jquery-part1-portlet-5.2.3.1.war

Deux mthodes dinstallation :


- Installation en utilisant le portlet : plugin installer.
- Installation par copie dans le rpertoire dinstallation chaud, dont
le chemin est : <LIFERAY_PATH>/deploy

96

Ajout dun nouveau thme

97

Ajout dun nouveau portlet

98

Modle de disposition (Layout Template)

99

Utilisation de lapplication de messagerie instantane

100

JSR-168

101

Rappel

La JSR-168 (Java Spcification Request 168) est la spcification des


portlets dfinissant le contrat entre les conteneurs de portlets et les
portlets.
La JSR-168 est une norme qui prend place dans le cadre de la JCP.
(JCP : Java Community Process: organisation cre par SUN pour
cordonner lvolution du langage Java et les technologies qui lui sont
associes).

102

Un projet Portlet

Un projet de portlet a une structure minimale bien dfinie, un


squelette selon lequel il doit tre dvelopp.
Il est structur de la mme faon que lest une Application Web et
cest pour ceci quil est packag en tant que WAR.

103

Structure dun projet Portlet

Un projet portlet possde :


Des fichiers statiques (images, javascript ou fichiers XML) et des
pages JSP,
Des librairies Java (JAR).
Un dossier WEB-INF/classes pour stocker les classes compiles
charger.
Un descripteur de dploiement pour application web sous : WEBINF/web.xml.
Un descripteur de dploiement spcifique au portlet sous : WEBINF/portlet.xml
104

Environnement de dveloppement

Plugin : Eclipse-Portal Pack 2.0.1

Plugin pour Eclipse utilis pour le dveloppement de portlet. Il se


prsente sous la forme de fichiers jar mettre dans le dossier
plugins de votre Eclipse (et redmarrer).
Plugin gratuit disponible ladresse suivante :
http://eclipse-portalpack.dev.java.net/

105

Cycle de vie dun portlet / Initialisation

106

Cycle de vie dun portlet / Traitement de la requte utilisateur

107

Cycle de vie dun portlet / Finalisation

108

Portlet : mthodes implmenter

Init(PortletConfig config) :
Utilise pour la configuration initiale ou la rservation de ressources
processAction(ActionRequest request, ActionResponse response) :
Utilise pour le traitement dune action utilisateur
render(RenderRequest request, RenderResponse response) :
Utilise pour le traitement dun rendu lutilisateur.
destroy() :
Utilise pour la libration des ressources rserves linitialisation.

109

Portlet : mthodes implmenter


(Dans la pratique)

Init(PortletConfig config) :
Utilise pour louverture dune connexion avec la base de donnes.
render(RenderRequest request, RenderResponse response) :
Cette mthode nest pas utilise, on utilise plutt : doView(), doEdit()
ou doHelp() selon le mode choisi.
destroy() :
Utilise pour la fermeture de la connexion avec la base de donnes

110

Cration de notre classe Portlet

Il existe 2 mthodes pour crer un Portlet :


Soit par implmentation de linterface Portlet : javax.portlet.Portlet
class MyPortlet implements Portlet {

}
Ou encore par hritage de la classe : javax.portlet.GenericPortlet
class MyPortlet extends GenericPortlet {

}
111

Cration du descripteur de dploiement portlet.xml

112

Mise en oeuvre

Menu de cration dun Portlet (plugin).

113

Mise en oeuvre

Cration de la classe Portlet -> Mise jour automatique du


descripteur de dploiement : portlet.xml
114

Mise en oeuvre

115

TP-1
Portlet Hello World

116

Requtes et URLs

Il existe 2 types de requtes :


- Action request :
Requte qui lance une action et dont le traitement se fait par la
mthode processAction().
- Render request :
Requte qui lance le rendu du Portlet slectionn, et dont le
traitement se fait par la mthode render().
Ces requtes ne peuvent tre saisie manuellement par le
dveloppeur. Elle doivent tre gnres automatiquement laide
dobjet ou de Tag appropri.

117

Requtes et URLs

Les requtes ne peuvent tre saisie manuellement par le


dveloppeur. Elle doivent tre gnres automatiquement laide
de lobjet PortletURL ou de Tag appropri dans le cas des pages
JSP.
Lobjet RenderResponse permet de crer un objet PortletURL qui va
contenir lURL dune action (ou render) quon pourra utiliser dans la
page retourne :

118

Portlet et pages JSP

Pour utiliser des pages jsp dans des projets portlets, lAPI nous
fournis 2 outils :
- Un objet dispatcher pour pouvoir inclure la page jsp souhaite
comme rendu de rponse lutilisateur :

Et
- Une librairie de Tag pour manipuler les objets du portail.

119

Portlet Tag Library

defineObjects : dclare 3 objets dans la page : renderRequest,


renderResponse et portletConfig.
actionURL : construit une URL daction qui pointe vers le Portlet en
cours.
renderURL : construit une URL render qui pointe vers le Portlet en
cours.
namespace : fournit un nom unique bas sur le Portlet courant afin
dviter un conflit entre noms de variables/fonctions avec les autres
portlets.
param : utilis au sein des tags : actionURL et renderURL, il donne
le nom et la valeur du paramtre.
120

Portlet et formulaires

Dans les pages JSP :


Utiliser la mthode POST (au lieu de GET) :
Le portail peut avoir besoin de coder des informations dans la
requte.
Utiliser le tag namespace pour viter un conflit entre des noms
de proprits similaires mais dans des portlets diffrentes.

121

Portlet et formulaires

Exemple :

122

Portlet : modes & tats

Dans la classe portlet, le mode et ltat peuvent tre chang


uniquement au niveau de la mthode processAction() par accs
son objet response .
Pour manipuler les modes utiliser la classe :
javax.portlet.PortletMode.
Pour manipuler les tats utiliser la classe :
javax.portlet.WindowState
Exemple :

123

Portlet et sessions

Lapi portlet dfinie 2 scopes de session accessibles laide de


lobjet javax.portlet.PortletSession :
PORTLET_SCOPE : (namespace)
Scope par dfaut et dans lequel sont stock uniquement les
attributs relatifs au portlet en question.
APPLICATION_SCOPE :
Scope pour accder la session globale et partager des attributs
entre diffrents portlets.
Exemples :

124

Portlet : action & render

Pour passer des paramtres entre la partie action et render, 2


mthodes :
Utiliser lobjet session comme zone de stockage intermdiaire.
Passage explicite des paramtres en utilisant lobjet
ActionResponse de la mthode processAction() :

125

TP-2
Portlet & formulaire

126

Portlet et base de donnes

Afin de se connecter la base de donnes, il faut disposer du pilote


(driver) JDBC correspondant. Dans notre cas, ce driver est dj
disponible dans le rpertoire <lib> de Tomcat : postgresql.jar
tapes dutilisation de la base de donnes :
1. Chargement du pilote.
2. Ouverture dune connexion en fournissant lURL de la base de
donnes et les informations dauthentification.
3. Utilisation de la connexion ouverte pour excuter des requtes
SQL.
4. Fermeture de la connexion.

127

Portlet et base de donnes

Exemple :

128

Portlet et base de donnes

Excution de requtes :
Pour excuter une requte, il faut :
1.
2.
3.
4.
5.
6.

Formuler une requte en SQL.


Crer un objet de type Statement .
Excuter la requte SQL laide de lobjet Statement .
Exploiter les rsultats de la requte, si elle en retourne.
Librer les ressources mmoires alloues.
Valider ou Annuler les modifications, sil y en a.

129

Portlet et base de donnes

Types de requte :
Il existe 2 types de requte selon que celle-ci, a ou non, un retour :
Requtes avec retour : SELECT
Utiliser la mthode : executeQuery
Rsultat de type : ResultSet.
Requtes sans retour : INSERT, UPDATE, DELETE
Utiliser la mthode : executeUpdate
Valider ou Annuler la transaction.
On peut classer les requtes aussi selon quelles disposent de
paramtres ou non. Si cest le cas alors lutilisation de lobjet
PreparedStatement est prfrable.
130

Portlet et base de donnes

Requte avec retour :

131

Portlet et base de donnes

Requte sans retour :

132

TP-3
Portlet & Base de
donnes

133

Projet

134

Ralisation dun portlet


Gestion dune liste de films

Objectif :
Dvelopper un portlet qui permet de consulter et de grer (CRUD)
une liste (table) de films. Un film ayant les proprits suivantes :
Nom / Genre / Date de sortie.
Implmenter les 3 modes : VIEW, EDIT et HELP.

135

VIEW :
Consultation de la liste des films en fournissant un filtre de
recherche qui permet de saisir les critres suivants :
Nom : saisir (commence par /contient / se termine par)
Genre : slectionner dune liste prdfinie.
Date du : date de dbut de la priode de recherche.
Date au : date de fin de la priode de recherche.
la fin de chaque ligne 2 liens :
Un pour supprimer la ligne en cours.
Un pour modifier la ligne en cours. Ce lien va renvoyer au mode
EDIT.
la fin de la page, un bouton pour crer <un film>
136

EDIT :
Page qui permet de crer ou modifier une ligne existante, elle
contient les champs suivants :
Nom : saisir
Genre : slectionner dune liste prdfinie.
Date de sortie : date saisir (format : dd/mm/yyyy).
La page contient aussi 2 boutons :
Un pour valider la saisie.
Un autre pour annuler la saisie et revenir au mode VIEW.

137

HELP :
Ce mode va contenir votre nom/prnom ainsi quune petite
description du portlet dvelopp.

Livrables :
Script SQL de cration de la table sous Postgres.
Portlet sous format darchive WAR (incluant les sources)
dployer directement sur Liferay.

138

Aspects nots :
Le script SQL doit tre correctement excutable sur Postgres.
Le portlet doit tre correctement utilisable aprs dploiement sur
Liferay.
Le code doit tre bien crit, format et document selon les
recommandations et les standards Java.
Une interface graphique soigne sera bien apprcie : mise en
forme, images, css.

139

Vous aimerez peut-être aussi