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

JSF Java Discussion :

[Choix de Conception] JSF vs API JavaScript


Sujet :

JSF Java

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Février 2004
    Messages
    23
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 23
    Par défaut [Choix de Conception] JSF vs API JavaScript
    Bonjour à tous,

    J'aimerais avoir vos retours d'expérience et vos avis en ce qui concerne un choix de conception autour de JSF.

    Le contexte :
    J'utilise actuellement des librairies Full JavaScript/AJAX (OpenLayers et ExtJS) pour développer des clients. Côté serveur j'utilise Spring MVC et des servlets pour assurer le rendu et les réponses aux requêtes AJAX.

    Maintenant je m'intéresse beaucoup à JSF et souhaite l’intégrer dans mes projets. Le problème, c'est que je ne souhaite pas porter ces librairies JavaScript au sein de composants JSF car cela ma paraît très long à faire. De plus, il ne me semble pas trivial de faire communiqué une API JavaScript avec des composants JSF.

    Au final ma question est donc, pensez-vous qu'il soit envisageable d’utiliser facilement une API JavaScript dans une application JSF ?
    Pour le moment de ce que j'ai pu lire ou tester ça me paraît forcément trivial et demande un gros effort de développement. Mais ne connaissant pas suffisamment JSF, je m'en remets à vos conseils et avis.

    Merci d'avance pour vos réponses.
    Julien

  2. #2
    Rédacteur
    Avatar de romaintaz
    Homme Profil pro
    Java craftsman
    Inscrit en
    Juillet 2005
    Messages
    3 790
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Java craftsman
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2005
    Messages : 3 790
    Par défaut
    Bonjour,

    RichFaces intègre de base de nombreux composants et fonctionnalités Ajax. De plus, quelques fonctions Javascript (les rich:effects) sont aussi présentes. Il dispose également du support du framework jQuery.
    Je pense de plus, qu'il n'y a pas vraiment de souci pour intégrer d'autres frameworks Javascript, mais peut-être que c'est à voir au cas par cas...
    Nous sommes tous semblables, alors acceptons nos différences !
    --------------------------------------------------------------
    Liens : Blog | Page DVP | Twitter
    Articles : Hudson | Sonar | Outils de builds Java Maven 3 | Play! 1 | TeamCity| CitConf 2009
    Critiques : Apache Maven

  3. #3
    Membre Expert
    Avatar de azerr
    Homme Profil pro
    Ingénieur Etude JEE/Eclipse RCP
    Inscrit en
    Avril 2006
    Messages
    942
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Drôme (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur Etude JEE/Eclipse RCP
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2006
    Messages : 942
    Par défaut
    Bonjour,
    je me permets d'intervenir car il faut faire tres attention a l'integration de plusieurs frameworks Javascript. Par exemple RichFaces (je croies mais je n'en suis pas sur) utilise prototype.js, qui est certes une librarire tres puissante et utilisés mais peut poser de serieux problèmes.

    En effet prototype redéfinit les objets de base Javascript, String, Array pour redefinir ou implementer certaines methodes. De plus prototype n'a pas de notion de namespace et definit des variables comme Form. Ces deux cas peuvent poser de serieux problèmes lors de l'intégration de plusieurs framework Javascript.

    J'avais tente a l'époque de la sortie de prototype de signaler ces problemes mais malheursement, l'auteur de cette librairie n'en a pas tenu compte. Un framework comme DOJO (bien plus complexe et plus lourd que protype) a tenu compte de ces problématiques nottement en incluant un namespace.

    Angelo

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Février 2004
    Messages
    23
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 23
    Par défaut
    Merci de vos réponses.

    En ce qui concerne RichFaces, effectivement, c'est la librairie qui paraissait couvrir le plus grand nombre de mes besoins et l'apport d’ajax4jsf est indéniable. De plus la librairie ExtJS que j'utilise utilise elle aussi JQuery

    En ce qui concerne prototype, effectivement, cette librairie bien que puissante peut parfois poser des problèmes quand on pousse un peut trop son utilisation.

    Néanmoins mon problème ne se pose pas trop en ce qui concerne le choix des librairies à utiliser (que se soit JSF ou JavaScript), mais plutôt dans l'interaction entre JSF et d'autres librairies (ou applications) développées à base d'API JavaScript.

    Exemple de problèmes :
    1. ExtJS me propose de masquer/afficher des colonnes de datagrid sans une seule requête côté serveur, ou bien encore de grouper des lignes de données suivant différentes colonnes là encore sans requête serveurs, ...
    Le problème, c'est que je ne vois pas comment pouvoir faire cela avec RichFaces par exemple sans repasser par un backing bean et donc de solliciter le serveur. Mais c'est peut-être ou sûrement par ce que je ne connais pas suffisamment JSF. J’aimerais donc savoir si en creusant un peu JSF ce genre de chose et réalisable (en encapsulant par exemple ce composant JavaScript) et si cela à un intérêt.

    2. OpenLayers est une API à la Google Map. Donc effectivement dans RichFaces, il existe un composant Google Map, donc je pourrais envisager de faire de même. Ce qui me ramène à la question du point 1.
    En faite, ici le problème réside plus dans l'aspect communication entre composant. La communication JSF vers OpenLayers ne me pose pas de problème (simple appels de JavaScript), mais l'inverse oui. En effet, je ne vois pas d'autres solutions que d'utiliser une jsFunction de Ajax4jsf pour faire ça et d'utiliser des reRender, ... ce qui me paraît un peu contre productif.

    Au final, je cherche donc à disposer de composants JSF disposant de plus de fonctionnalités JavaScript, mais là encore pour le moment je vois ça comme ce compliqué la vie pour quelque chose de pas forcément nécessaire. J’aimerais donc savoir si cela à un réel intérêt quand à la qualité des applications réalisées et à la capacité de capitalisation du code.

    Désolé d’avoir été un peu long dans ce post.

    Julien

Discussions similaires

  1. [Choix] Struts ou JSF pour débuter ?
    Par gloglo dans le forum Frameworks Web
    Réponses: 12
    Dernier message: 25/06/2008, 15h23
  2. choix de conception
    Par bibile dans le forum Requêtes
    Réponses: 11
    Dernier message: 18/07/2006, 16h19
  3. Eclaircissements sur choix de conception
    Par sozie9372 dans le forum Langage SQL
    Réponses: 2
    Dernier message: 07/06/2006, 14h02
  4. [JSF] PanelGrid et javascript
    Par SEMPERE Benjamin dans le forum JSF
    Réponses: 3
    Dernier message: 18/05/2006, 12h54

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