1 auteur: laura zunarelli. 2 plan motivations problèmes abordés quattend t on de la solution ?...

23
1 Auteur: Laura Zunarelli

Upload: olivier-pelissier

Post on 03-Apr-2015

111 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 1 Auteur: Laura Zunarelli. 2 PLAN Motivations Problèmes abordés Quattend t on de la solution ? Marchés et acteurs Solutions Principes Principes de mise

1Auteur: Laura Zunarelli

Page 2: 1 Auteur: Laura Zunarelli. 2 PLAN Motivations Problèmes abordés Quattend t on de la solution ? Marchés et acteurs Solutions Principes Principes de mise

2

PLAN

• Motivations• Problèmes abordés• Qu’attend t on de la solution ?

• Marchés et acteurs• Solutions

• Principes• Principes de mise en œuvre Struts• Principes de mise en œuvre JSF

• Conclusion• Points durs et questions ouvertes• Perspectives du domaine

Page 3: 1 Auteur: Laura Zunarelli. 2 PLAN Motivations Problèmes abordés Quattend t on de la solution ? Marchés et acteurs Solutions Principes Principes de mise

3

Motivations

Page 4: 1 Auteur: Laura Zunarelli. 2 PLAN Motivations Problèmes abordés Quattend t on de la solution ? Marchés et acteurs Solutions Principes Principes de mise

4

MOTIVATIONSMotivations

– Problèmes abordés

– Qu’attend t on de la solution ?

• Marchés et acteurs• Solutions

– Principes– Principes de mise

en œuvre Struts– Principes de mise

en œuvre JSF• Conclusion

– Points durs et questions ouvertes

– Perspectives du domaine

De nos jours, les frameworks sont une alternative très avantageuse aux servlets et aux JSP en matière de développement d'applications Web en Java

En effet, ils permettent:• d'assurer l'évolutivité des applications Web,• de diminuer les coûts et les délais de développement,•d'accroître la fiabilité des applications.

Page 5: 1 Auteur: Laura Zunarelli. 2 PLAN Motivations Problèmes abordés Quattend t on de la solution ? Marchés et acteurs Solutions Principes Principes de mise

5

MOTIVATIONSMotivations

– Problèmes abordés

– Qu’attend t on de la solution ?

• Marchés et acteurs• Solutions

– Principes– Principes de mise

en œuvre Struts– Principes de mise

en œuvre JSF• Conclusion

– Points durs et questions ouvertes

– Perspectives du domaine

Struts et JavaServerFaces (JSF) sont des standards parmi les modèles d’architectures pour des applications web.

Leur but est de séparer les infographistes des informaticiens.

Pour cela, ils fournissent une architecture facilitant leur maintenance en utilisant MVC.

Page 6: 1 Auteur: Laura Zunarelli. 2 PLAN Motivations Problèmes abordés Quattend t on de la solution ? Marchés et acteurs Solutions Principes Principes de mise

6

MOTIVATIONS

Le modèle MVC est un patron de conception classique pour la construction d’interfaces graphiques.

M pour modèle: représente les états et la logique de l’application.

V pour Vue: partie affichage de l’application

C pour Contrôleur: gère la synchronisation entre la vue et le modèle.

Motivations– Problèmes

abordés– Qu’attend t on de

la solution ?• Marchés et acteurs• Solutions

– Principes– Principes de mise

en œuvre Struts– Principes de mise

en œuvre JSF• Conclusion

– Points durs et questions ouvertes

– Perspectives du domaine

Page 7: 1 Auteur: Laura Zunarelli. 2 PLAN Motivations Problèmes abordés Quattend t on de la solution ? Marchés et acteurs Solutions Principes Principes de mise

7

MOTIVATIONSMotivations

– Problèmes abordés

– Qu’attend t on de la solution ?

• Marchés et acteurs• Solutions

– Principes– Principes de mise

en œuvre Struts– Principes de mise

en œuvre JSF• Conclusion

– Points durs et questions ouvertes

– Perspectives du domaine

Modèle MVC Source: http://www.guepard.asso.fr/ibm/sw2002/Struts.pdf

Page 8: 1 Auteur: Laura Zunarelli. 2 PLAN Motivations Problèmes abordés Quattend t on de la solution ? Marchés et acteurs Solutions Principes Principes de mise

8

Marchés & Acteurs

Page 9: 1 Auteur: Laura Zunarelli. 2 PLAN Motivations Problèmes abordés Quattend t on de la solution ? Marchés et acteurs Solutions Principes Principes de mise

9

MARCHES et ACTEURS

JSF et Struts sont les frameworks pour les applications web les plus connus.

Ils ne sont d’ailleurs pas complètement incompatibles:

• JSF est principalement dédié à la couche Vue de MVC, • Struts est construit autour d’un puissant contrôleur.

Motivations– Problèmes

abordés– Qu’attend t on de

la solution ?• Marchés et acteurs• Solutions

– Principes– Principes de mise

en œuvre Struts– Principes de mise

en œuvre JSF• Conclusion

– Points durs et questions ouvertes

– Perspectives du domaine

Page 10: 1 Auteur: Laura Zunarelli. 2 PLAN Motivations Problèmes abordés Quattend t on de la solution ? Marchés et acteurs Solutions Principes Principes de mise

10

MARCHES et ACTEURS

Une méthode d’intégration a été suggérée par Craig MacClanahan afin de combiner les avantages de chacun.

Pour autant JSF et Struts n’ont pas été conçus dans cet optique:

• Struts propose des tag libs pour les vues et une définition de la navigation au travers des pages. • JSF fournit un manageur des cycles de vie de l’application au travers de servlets de contrôle.

Motivations– Problèmes

abordés– Qu’attend t on de

la solution ?• Marchés et acteurs• Solutions

– Principes– Principes de mise

en œuvre Struts– Principes de mise

en œuvre JSF• Conclusion

– Points durs et questions ouvertes

– Perspectives du domaine

Page 11: 1 Auteur: Laura Zunarelli. 2 PLAN Motivations Problèmes abordés Quattend t on de la solution ? Marchés et acteurs Solutions Principes Principes de mise

11

MARCHES et ACTEURS

Struts (1998), premier sur la marché, fut très plébiscité. Avec l’arrivée de JSF (2004), on cru, à tort, que ce dernier écraserait son concurrent.

De nos jours il y a presque autant d’utilisateurs pour Struts que pour JSF.Les concepteurs de Struts l’ont bien compris et ont réalisé un autre framework: Struts Shale qui est basé sur JSF mais reprend les principes de Struts.

Motivations– Problèmes

abordés– Qu’attend t on de

la solution ?• Marchés et acteurs• Solutions

– Principes– Principes de mise

en œuvre Struts– Principes de mise

en œuvre JSF• Conclusion

– Points durs et questions ouvertes

– Perspectives du domaine

Page 12: 1 Auteur: Laura Zunarelli. 2 PLAN Motivations Problèmes abordés Quattend t on de la solution ? Marchés et acteurs Solutions Principes Principes de mise

12

Solutions

Page 13: 1 Auteur: Laura Zunarelli. 2 PLAN Motivations Problèmes abordés Quattend t on de la solution ? Marchés et acteurs Solutions Principes Principes de mise

13

SOLUTIONSMotivations

– Problèmes abordés

– Qu’attend t on de la solution ?

• Marchés et acteurs• Solutions

– Principes– Principes de mise

en œuvre Struts– Principes de mise

en œuvre JSF• Conclusion

– Points durs et questions ouvertes

– Perspectives du domaine

Struts est soutenu par: apache software foundation.Pour des applications simples, Struts est lourd: le niveau de complexité est assez important. Cependant l’application est mature et répandue.

JSF a été réalisé par Sun pour J2EE.La mise en place de JSF est plus simple, plus rapide et sa spécification a été bien réfléchie.

Page 14: 1 Auteur: Laura Zunarelli. 2 PLAN Motivations Problèmes abordés Quattend t on de la solution ? Marchés et acteurs Solutions Principes Principes de mise

14

SOLUTION 1: STRUTSMotivations

– Problèmes abordés

– Qu’attend t on de la solution ?

• Marchés et acteurs• Solutions

– Principes– Principes de mise

en œuvre Struts– Principes de mise

en œuvre JSF• Conclusion

– Points durs et questions ouvertes

– Perspectives du domaine

Principes de mise en œuvre:

Les servlets sont utilisées de manière transparente (via des classes)

Les pages jsp exploitent des balises personnalisées de Struts. Il est cependant conseillé d’utiliser aussi la bibliothèque JSTL.

La structure de l’application web est décrite dans un fichier: struts-config.xml

Page 15: 1 Auteur: Laura Zunarelli. 2 PLAN Motivations Problèmes abordés Quattend t on de la solution ? Marchés et acteurs Solutions Principes Principes de mise

15

SOLUTION 1: STRUTSMotivations

– Problèmes abordés

– Qu’attend t on de la solution ?

• Marchés et acteurs• Solutions

– Principes– Principes de mise

en œuvre Struts– Principes de mise

en œuvre JSF• Conclusion

– Points durs et questions ouvertes

– Perspectives du domaine

Bibliothèques Struts:

1) Struts*.jar: contiens les classes java distribuées par le projet Struts.

2) Les fichiers commons*.jar sont utilisés par l’implémentation.

3) Les autres fichiers *.jar sont importés par Struts mais proviennent d’autres projets. Ex: struts-jsf-plugin.jar

Au lancement de l’application les archives nécessaires sont copiées dans le répertoire WEB-INF/lib.

Page 16: 1 Auteur: Laura Zunarelli. 2 PLAN Motivations Problèmes abordés Quattend t on de la solution ? Marchés et acteurs Solutions Principes Principes de mise

16

SOLUTION 2: JSFMotivations

– Problèmes abordés

– Qu’attend t on de la solution ?

• Marchés et acteurs• Solutions

– Principes– Principes de mise

en œuvre Struts– Principes de mise

en œuvre JSF• Conclusion

– Points durs et questions ouvertes

– Perspectives du domaine

Principes de mise en œuvre:

L’approche de JSF consiste à permettre aux développeurs web de se concentrer sur leurs besoins sans se soucier des langages informatiques tels que Java. Dans ce but JSF utilise XML ou des propriétés.

La structure de l’application web est décrite dans un fichier: faces-config.xml

Page 17: 1 Auteur: Laura Zunarelli. 2 PLAN Motivations Problèmes abordés Quattend t on de la solution ? Marchés et acteurs Solutions Principes Principes de mise

17

Bibliothèques JSF:

1) jsf-api.jar : contiens les classes standard de JSF et les interfaces à satisfaire par les implémentations de JSF.

2) jsf-ri.jar : représente l’implémentation de référence de Sun pour l’API de JSF.

3) jstl.jar & standard.jar  contiennent les fichiers JSTL. L’implémentation de référence étant basée sur JSTL.

4) Les fichiers commons*.jar sont utilisés par l’implémentation de référence de Sun.

SOLUTION 2: JSFMotivations

– Problèmes abordés

– Qu’attend t on de la solution ?

• Marchés et acteurs• Solutions

– Principes– Principes de mise

en œuvre Struts– Principes de mise

en œuvre JSF• Conclusion

– Points durs et questions ouvertes

– Perspectives du domaine

Page 18: 1 Auteur: Laura Zunarelli. 2 PLAN Motivations Problèmes abordés Quattend t on de la solution ? Marchés et acteurs Solutions Principes Principes de mise

18

Conclusion

Page 19: 1 Auteur: Laura Zunarelli. 2 PLAN Motivations Problèmes abordés Quattend t on de la solution ? Marchés et acteurs Solutions Principes Principes de mise

19

Les points durs de StrutsMotivations

– Problèmes abordés

– Qu’attend t on de la solution ?

• Marchés et acteurs• Solutions

– Principes– Principes de mise

en œuvre Struts– Principes de mise

en œuvre JSF• Conclusion

– Points durs et questions ouvertes

– Perspectives du domaine

L’utilisation de Struts est limitée à http et html (contrairement à JSF qui utilise aussi: XUL, XML, WML…)

Le langage est moins concis, moins puissant et moins simple pour Struts que pour JSF, car JSF utilise des tags.

Page 20: 1 Auteur: Laura Zunarelli. 2 PLAN Motivations Problèmes abordés Quattend t on de la solution ? Marchés et acteurs Solutions Principes Principes de mise

20

Les points durs de JavaServerFacesMotivations

– Problèmes abordés

– Qu’attend t on de la solution ?

• Marchés et acteurs• Solutions

– Principes– Principes de mise

en œuvre Struts– Principes de mise

en œuvre JSF• Conclusion

– Points durs et questions ouvertes

– Perspectives du domaine

L’utilisation: JSF nécessite d’être à l’aise avec le standard JSP (Java Server Page) et les servlets.

la documentation: assez variée aujourd’hui elle reste confuse …

Confusion sur les noms: Les pages utilisant jsf se terminent en .jsp alors que leurs url se terminent en .faces ou .jsf…

Page 21: 1 Auteur: Laura Zunarelli. 2 PLAN Motivations Problèmes abordés Quattend t on de la solution ? Marchés et acteurs Solutions Principes Principes de mise

21

Perspectives du domaineMotivations

– Problèmes abordés

– Qu’attend t on de la solution ?

• Marchés et acteurs• Solutions

– Principes– Principes de mise

en œuvre Struts– Principes de mise

en œuvre JSF• Conclusion

– Points durs et questions ouvertes

– Perspectives du domaine

D’autres framework pour applications web peuvent être utilisé tels que Spring MVC, barracuda, webwork…

Mais Struts et JSF continuent de dominer les autres frameworks en matière d’apllications web.

Cependant, Struts Shale qui est encore un framework très récent (2005) pourrais en devenant plus mature les supplanter…

Page 22: 1 Auteur: Laura Zunarelli. 2 PLAN Motivations Problèmes abordés Quattend t on de la solution ? Marchés et acteurs Solutions Principes Principes de mise

22

Références

JSF: Tutoriel: « introduction à jsf » réalisé par: Olivier Schmitt en apût 2005 :

http://schmitt.developpez.com/tutoriel/java/jsf/introduction

• Document pdf: Java Server Faces de la société serli informatique réalisés par mickaël Baron en 2007 http://mbaron.developpez.com/javaee/jsf/

•Site internet: •Officiel: http://java.sun.com/javaee/javaserverfaces/download.html•Autres: plusieurs tutoriels disponibles à l’adresse:

http://www.jsftutorials.net/

Page 23: 1 Auteur: Laura Zunarelli. 2 PLAN Motivations Problèmes abordés Quattend t on de la solution ? Marchés et acteurs Solutions Principes Principes de mise

23

Références

Struts: •Document pdf: Struts de la société serli informatique réalisés par mickaël Baron en 2007

http://tahe.developpez.com/java/struts/

•Site internet: •Officiel: http://struts.apache.org/• Autres: http://www.guepard.asso.fr/ibm/sw2002/Struts.pdf

http://struts.apache.org/1.2.7/userGuide/installation.html