IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Frameworks Web Java Discussion :

JSF versus GWT [Débat]


Sujet :

Frameworks Web Java

  1. #1
    Membre du Club
    Inscrit en
    Juin 2007
    Messages
    111
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 111
    Points : 49
    Points
    49
    Par défaut JSF versus GWT
    Bonjour tous le monde,

    je suis en face d'un choix technologique entre jsf et gwt qui j'ignore completement.

    j'ai pensé à demender l'avis de ceux qui ont de l'experience concernant ces deux framework avant de commencer une recherche sur le gwt.

    toutes vos avis et vos commentaires consernant les avantages et les inconvinients de chaque frawework sont la bienvenu .

    merci d'avance.


  2. #2
    Rédacteur

    Profil pro
    Inscrit en
    Juin 2003
    Messages
    4 184
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 4 184
    Points : 5 059
    Points
    5 059
    Par défaut
    salut,

    JSF est un framework MVC2 complet, qui te permet de développer une application web respectant ce paradigme.
    JSF est un standard, et fait partie de la norme J2EE.

    ce qui est comparable à GWT dans JSF, c'est les composants orientés AJAX/WEB 2.0, GWT permet de développer du code java et le compile en javascript, tu ne te souci pas du code javascript mais, tu n'a pas non plus la main sur le code généré,
    GWT fait seulement de l'ajax (sauf changement dans les dernières versions), JSF permet de faire des pages sans javascript..

    les composants JSF,sont préts à l'utilisation à l'aide des TAG, y'en a qui viennent avec leur propre evenemets AJAX, d'autres comme Richfaces permettent au developpeur d'ajouter des requetes ajax pour chaque composants et décider quoi envoyer et quoi réactualiser dans la page..

    mais niveau du temps de developpement, il parait que GWT c'est plus rapide, mais, aucune certitude la dessus..

  3. #3
    Membre habitué Avatar de Rizzen
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    115
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 115
    Points : 157
    Points
    157
    Par défaut
    Une des grosse différence aussi est que GWT est un développement "like swing" tandis que pour JSF tu créer belle et bien une page web.

    J'ai eut a faire il y pas si longtemps que toi le même choix et j'ai choisis JSF, que je trouve plus facile à appréhender, mieux documenté et c'est du bonheur avec spring hibernate ^^. Alors que GWT et hibernate c'est pas l'amour entre eux
    Java'ldire à tout le monde

  4. #4
    Membre du Club
    Inscrit en
    Juin 2007
    Messages
    111
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 111
    Points : 49
    Points
    49
    Par défaut
    merci pour votre aide,

    je suis encors à l'attente d'autre avis si c'est possible

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    109
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2007
    Messages : 109
    Points : 57
    Points
    57
    Par défaut
    Pour répondre à ta question, JSF implémente une spec standard, ce qui assure sa pérénité. De plus, il est facile à apprendre et rapide à utiliser. Et il est relativement complet puisqu'il possède entre autre un contrôleur pour la navigation. GWT sera un peu plus complexe à apprendre et à mettre en oeuvre (tout dépend si tu es familier avec swing). C'est un peu plus compliqué à utiliser et ça ne s'occupe pas de contrôler la navigation.

    A priori JSF est plus sympa pour débuter. Maintenant, c'est sans parler de l'Ajax, WEB 2.0 et tout ce que tu vas probablement rapidement avoir envie de mettre d'hyper dynamique dans ton site. En réalité, je dirais que le choix doit venir de ton objectif, du type de site que tu veux faire...

    Si tu veux faire de la manipulation "basique" de données, style faire un forum, un album photo, un site de vente en ligne ou une application de gestion quelconque, prends plutôt JSF et une de ses librairies de composants AJAX, comme IceFaces ou RichFaces. Ces librairires couvrent 95% de tes besoins et respectent bien la simplicité d'apprentissage et de mise en oeuvre de JSF. Par contre, si tu veux faire un site qui ressemble à une réelle application "desktop", comme Power-Point, Paint, etc. tu vas avoir besoin de plus que ça. Et c'est là que GWT entre en scène. Il te permet en effet de gérer avec plus de précision et plus de détails tout ce qui se passe sur l'écran. Tu ne feras jamais un site comme http://280slides.com avec JSF+RichFaces. Et si GWT est plus complexe, c'est parce qu'il te permet justement de gérer bien plus de choses à un niveau de détails bien plus élevé.

    JSF est idéal dans une grande majorité des cas, et très facile à utiliser. Mais GWT te permettra d'aller encore plus loin, si tu acceptes de gérer beaucoup plus de choses par toi-même... A toi de voir tes besoins.

    P.S. J'ai entendu parler de GWT4JSF qui réunirait les deux frameworks, ce qui pour moi constituerait l'alliance parfaite! A voir si certains ont ici plus d'infos à ce sujet...

  6. #6
    Rédacteur

    Profil pro
    Inscrit en
    Juin 2003
    Messages
    4 184
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 4 184
    Points : 5 059
    Points
    5 059
    Par défaut
    Citation Envoyé par Asterius Voir le message
    Pour répondre à ta question, JSF implémente une spec standard, ce qui assure sa pérénité. De plus, il est facile à apprendre et rapide à utiliser. Et il est relativement complet puisqu'il possède entre autre un contrôleur pour la navigation. GWT sera un peu plus complexe à apprendre et à mettre en oeuvre (tout dépend si tu es familier avec swing). C'est un peu plus compliqué à utiliser et ça ne s'occupe pas de contrôler la navigation.
    Je ne pense pas que GWT est plus compliqué à appréhender, avec GWT tu n'a pas besoin de navigation, il se base sur ce qu'on appelle, Singlepage Interface, Une page qui gère toute l'application, c'est une autre manière de penser une application web.
    JSF est complexe à mon avis, les différentes phases les différentes implémentations, la pauvreté des composants a handicapé sa percé dans la communauté java, maintenant avec des librairies comme richfaces on peut faire des choses sympa,
    GWT a de l'avenir, mais, à mon avis, il ne faut pas confier un projet GWt à des développeurs débutants, c"est plus facile de faire n'importe quoi. JSF c'est plus cadré ça reste du MVC2.

  7. #7
    En attente de confirmation mail

    Homme Profil pro
    Inscrit en
    Juillet 2006
    Messages
    766
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 766
    Points : 1 267
    Points
    1 267
    Par défaut
    Pour moi, il y a trois problèmes majeurs avec GWT (j'ai en fait essayé Ext-GWT):


    • Le côté boite noir : va savoir ce qui se passe entre ton code java et l'erreur. C'est pas évident à débugguer (galère à afficher un Panel : impossible de détecter l'erreur).
    • Le temps de traduction java->javascript : pourtant j'ai une bécane furieuse et il me faut 20 secondes.
    • Le manque de documentation
    • Le manque de perrenité à long terme

    Cela dit, c'est des remarques de newbie, je n'ait passé qu'une ou deux journées dessus.

    Par contre pour JSF, j'aurais tendance à attendre que disparaissent ces affreux backed-bean XML.
    Pour ma part, j'ai opté à un duo JSP en serveur et la création de composants graphiques Ext-Js en javascript.

  8. #8
    En attente de confirmation mail

    Homme Profil pro
    Inscrit en
    Juillet 2006
    Messages
    766
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 766
    Points : 1 267
    Points
    1 267
    Par défaut
    @Asterius : slide280, c'est du web avec des Divs et des requêtes. N'importe quelle technologie gérant Ajax peut le faire.

  9. #9
    Membre éprouvé
    Inscrit en
    Avril 2006
    Messages
    853
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 853
    Points : 929
    Points
    929
    Par défaut
    j'ai développé un gros projet en GWT et je dirais qu'il y a beaucoup de défaut

    temp de compilation énorme
    très peu documenté
    composant très moyen si on utilise pas de librairie externe gwt-ext, mygwt....

    on s'est basé sur gwt-ext, il utilise une version spécifique de ext avant qu'il change de licence... donc des bug sont gardé

    le gestionnaire s'est lancé avec gwt sans réelement connaitre... pas sûr qu'il le réutiliserais si on devrait refaire le tout

  10. #10
    En attente de confirmation mail

    Homme Profil pro
    Inscrit en
    Juillet 2006
    Messages
    766
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 766
    Points : 1 267
    Points
    1 267
    Par défaut
    Citation Envoyé par robert_trudel Voir le message
    le gestionnaire s'est lancé avec gwt sans réelement connaitre... pas sûr qu'il le réutiliserais si on devrait refaire le tout
    Doit-on accuser Google ?

  11. #11
    Membre du Club
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    109
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2007
    Messages : 109
    Points : 57
    Points
    57
    Par défaut
    @nicorama : écrire 280slides en JSF, sans connaître javascript, sans en écrire une ligne? J'en doute très fort... J'ai l'habitude de JSF, ça fonctionne relativement bien, c'est relativement complet, mais il ne faut pas sortir de la librairie de composants... a moins d'en connaitre un rayon sur le javascript. Rien que le jeu de redimensionnement des cadres et de drag&drop d'éléments dans tes slides me parait quasi impossible avec JSF...

  12. #12
    En attente de confirmation mail

    Homme Profil pro
    Inscrit en
    Juillet 2006
    Messages
    766
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 766
    Points : 1 267
    Points
    1 267
    Par défaut
    Bien sûr il faut gérer Ajax donc Javascript. Tu peux très bien faire des composants JSF qui incorporent Scriptaculous - aucun soucis là-dessus.

  13. #13
    Membre du Club
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    109
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2007
    Messages : 109
    Points : 57
    Points
    57
    Par défaut
    Ok mais c'est donc ce que je dis : JSF ne se suffit pas à lui-même, il est limité et si tu veux dépasser ses limites tu dois te créer des composants...

    Tandis que GWT, tu peux directement tout faire puisqu'il génère ce javascript.

    => Si tu ne veux pas faire de javascript (je déteste ça), utilises GWT sinon tu seras tôt ou tard confronté aux limitations de JSF

  14. #14
    En attente de confirmation mail

    Homme Profil pro
    Inscrit en
    Juillet 2006
    Messages
    766
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 766
    Points : 1 267
    Points
    1 267
    Par défaut
    On ne va pas y passer le topic, mais tu confond limitation et périmètre. JSF ne limite pas la programmation Client - encore faut-il le faire.

    De même, avec GWT, tu devras bien te débrouiller avec les CSS et la database.

  15. #15
    Rédacteur
    Avatar de lunatix
    Homme Profil pro
    Architecte technique
    Inscrit en
    Novembre 2002
    Messages
    1 960
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Architecte technique

    Informations forums :
    Inscription : Novembre 2002
    Messages : 1 960
    Points : 3 736
    Points
    3 736
    Par défaut
    pour moi, jsf est au web ce qu'ont étés les EJB 1 et 2 au backend.
    Crée avant ajax, très peu adapté, ca génère des palanquées de javascript et de html non strict. En plus pour faire tourner le truc, il faut empiler jsf, facelet, ajax4Jsf voir seam. Une complexité inacceptable a mon gout pour une couche graphique.

    (et je ne parle pas de choisir une librairie de composants, d'en créer et ... mixer deux librairies)
    Il est vrai que JSF 2.0 améliore les choses, mais a mon avis, c'est pas encore ca.

    Gwt a d'autres défauts, mais au moins ca se comprends assez vite. Je pense que les frameworks type echo3, wicket, Zk et Gwt sont dans la bonne direction. Faciles d'accès, java centric, limitant le xml.


    PS. :je comprends pas votre problème sur la compilation, en mode hosting, ca va assez vite, et pour le déploiement, une compilation un peu longue ca ne me parait pas un soucis.

  16. #16
    En attente de confirmation mail

    Homme Profil pro
    Inscrit en
    Juillet 2006
    Messages
    766
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 766
    Points : 1 267
    Points
    1 267
    Par défaut
    Citation Envoyé par lunatix Voir le message
    pour moi, jsf est au web ce qu'ont étés les EJB 1 et 2 au backend.
    Crée avant ajax, très peu adapté, ca génère des palanquées de javascript et de html non strict. En plus pour faire tourner le truc, il faut empiler jsf, facelet, ajax4Jsf voir seam. Une complexité inacceptable a mon gout pour une couche graphique.

    (...) limitant le xml.
    Parfaitement d'accord. Les objectifs souhaités de JSF sont excellents, mais concrètement, faut être prix Nobel ou Christophe Colomb pour s'aventurer dans la création de son propre composant. Ou être payé et pas avoir le choix

    Citation Envoyé par lunatix Voir le message
    PS. :je comprends pas votre problème sur la compilation, en mode hosting, ca va assez vite, et pour le déploiement, une compilation un peu longue ca ne me parait pas un soucis.
    Ben j'ai payé 1000€ mon PC pour pouvoir jouer à Call of Duty - euh gagner en productivité. Donc c'est frustrant de voir mon super PC ramer comme faisait le précédant.

  17. #17
    Rédacteur
    Avatar de lunatix
    Homme Profil pro
    Architecte technique
    Inscrit en
    Novembre 2002
    Messages
    1 960
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Architecte technique

    Informations forums :
    Inscription : Novembre 2002
    Messages : 1 960
    Points : 3 736
    Points
    3 736
    Par défaut
    visiblement ils bossent sur le probleme
    # Compiler performance improvements

    * 1.6 will introduce parallel permutation compilations and other performance tweaks for faster compiles

  18. #18
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 310
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 310
    Points : 9 522
    Points
    9 522
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par nicorama Voir le message
    Pour ma part, j'ai opté à un duo JSP en serveur et la création de composants graphiques Ext-Js en javascript.
    C'est amusant, un peu à contre courant... mais j'ai développé en 2005 un framework qui suit en gros ce schéma. Il est basé sur un dictionnaire et ce sont des composants javascript qui créés les ressources sur le navigateur.
    Le reste suit l'architecture MVC2... Il y a de gros avantages, et des inconvénients également, mais ce qui est certain, c'est qu'il faut très bien connaître javascript...
    Ceci dit, on nous parle de web2, ajax etc... et on voudrait s'affranchir de javascript ? Syntaxe error
    Ou alors, on se contente des composants existants.

    Pour ce qui est de la discussion de base, personnellement, je choisirais actuellement JSF, sans hésiter...
    On a, l'année dernière, tenté GWT, c'est lent, lourd et franchement, s'il s'agit de réinventer le client lourd, autant utiliser swing
    JSF à l'heure actuelle est vraiment abouti avec ces éléments :
    - EJB3
    - Facelets
    - RichFaces
    - Seam (ça limite peut-être le choix du serveur)

    A+
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  19. #19
    Rédacteur
    Avatar de lunatix
    Homme Profil pro
    Architecte technique
    Inscrit en
    Novembre 2002
    Messages
    1 960
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Architecte technique

    Informations forums :
    Inscription : Novembre 2002
    Messages : 1 960
    Points : 3 736
    Points
    3 736
    Par défaut
    Ceci dit, on nous parle de web2, ajax etc... et on voudrait s'affranchir de javascript ? Syntaxe error
    pas forcement. regarde swing, tu peux avoir dans une equipe un pro java2D/painter qui va faire des composants complexes, et des utilisateurs de ces composants qui ne vont jamais descendre de le detail du fonctionnement. (voir le ribbon composant de flamingo par exemple)

    certains frameworks bien foutus te permettent de faire exactement la même chose avec javascript.

  20. #20
    Rédacteur

    Profil pro
    Inscrit en
    Juin 2003
    Messages
    4 184
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 4 184
    Points : 5 059
    Points
    5 059
    Par défaut
    Citation Envoyé par Asterius Voir le message
    Ok mais c'est donc ce que je dis : JSF ne se suffit pas à lui-même, il est limité et si tu veux dépasser ses limites tu dois te créer des composants...
    Non ce n'est plus le cas, il existe des librairies de composants telle que richfaces, tomahawk,ICFaces..
    je pense que c'est une erreur de se lancer dans le développement de composants, ça rendra la maintenance et l'évolution de l'application impossible.

    Citation Envoyé par lunatix Voir le message
    pour moi, jsf est au web ce qu'ont étés les EJB 1 et 2 au backend.
    Crée avant ajax, très peu adapté, ca génère des palanquées de javascript et de html non strict. En plus pour faire tourner le truc, il faut empiler jsf, facelet, ajax4Jsf voir seam. Une complexité inacceptable a mon gout pour une couche graphique.
    Exact surtout la complexité ..

    Citation Envoyé par lunatix Voir le message
    Gwt a d'autres défauts, mais au moins ca se comprends assez vite. Je pense que les frameworks type echo3, wicket, Zk et Gwt sont dans la bonne direction. Faciles d'accès, java centric, limitant le xml.
    en plus, même JBoss Seam a adopté GWT dans la dernière version GWT, la preuve que JSF même avec richfaces reste toujours complexe pour réaliser des projets web 2.0.

    GWT est un nouveau framework et présente aussi une autre façon de développer les applications web. il est plus simple à comprendre et à utiliser, surtout par rapport à JSF.
    Je ne penses pas qu'on ait le besoin de débuguer le code javascript généré, ce n'est pas le principe.

Discussions similaires

  1. C# versus Java
    Par laffreuxthomas dans le forum C#
    Réponses: 368
    Dernier message: 30/03/2019, 22h59
  2. HTML5+CSS3 versus JSF
    Par LaVieEst... dans le forum Général Conception Web
    Réponses: 3
    Dernier message: 28/04/2014, 13h27
  3. Seam avec GWT au lieu de JSF
    Par riadhhwajdii dans le forum Seam
    Réponses: 1
    Dernier message: 10/12/2009, 13h10
  4. Comparaison temps de dev jsf versus swing
    Par Chatastroff dans le forum JSF
    Réponses: 5
    Dernier message: 25/02/2009, 15h15

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo