1 / 23

Le développement MVC pour les applications Web :

Le développement MVC pour les applications Web :. JSF et Struts. Auteur: Laura Zunarelli. 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

hector
Download Presentation

Le développement MVC pour les applications Web :

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Le développement MVC pour les applications Web : JSF et Struts Auteur: Laura Zunarelli

  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

  3. Motivations

  4. MOTIVATIONS 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 • 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.

  5. MOTIVATIONS 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 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.

  6. MOTIVATIONS 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 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.

  7. MOTIVATIONS 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 Modèle MVC Source: http://www.guepard.asso.fr/ibm/sw2002/Struts.pdf

  8. Marchés & Acteurs

  9. MARCHES et ACTEURS 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 • 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.

  10. MARCHES et ACTEURS 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 • 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.

  11. MARCHES et ACTEURS 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 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.

  12. Solutions

  13. SOLUTIONS 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 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.

  14. SOLUTION 1: 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 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

  15. SOLUTION 1: 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 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.

  16. SOLUTION 2: JSF 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 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

  17. SOLUTION 2: JSF 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 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.

  18. Conclusion

  19. Les points durs 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 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.

  20. Les points durs de JavaServerFaces 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 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…

  21. Perspectives du domaine 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 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…

  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/

  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

More Related