Question

Je commence à JSF2.0 j'ai utilisé un tutoriel comme référence, mais je pose la question suivante:

Le tutoriel utilisé 2 libs seulement:. jsf-api.jar, jsf-impl.jar (mais aussi eu JSTL) du projet Mojarra

J'ai essayé de les dowload aussi, mais il semble que le site est pas accessible. Alors je Apache MyFaces mais pour exécuter l'exemple que je devais ajouter 8 pots (commons-*, myfaces-*).
Pourquoi ai-je besoin de plus de pots si j'utilise MyFaces? Dois-je préférer Mojarra comme plus léger? Aussi la page de téléchargement est en effet JSF Mojarra ?

Merci

Était-ce utile?

La solution

  

Pourquoi ai-je besoin de plus de pots si j'utilise MyFaces?

Parce que ces dépendances commons-* ne sont pas regroupés dans MyFaces. D'autre part, si vous utilisez d'autres bibliothèques de Apache.org qui utilisent également les dépendances de commons-*, puis vous vous retrouvez finalement avec les bibliothèques de taille totale plus petite taille.

A pris note devrait être que depuis Mojarra 2.1.6 un seul format de fichier JAR javax.faces.jar est disponible.


  

Je préfère Mojarra Faut que plus léger

Ceci est un non-argument. Vous devriez regarder comment robuste et bien entretenu la mise en œuvre du JSF est.

Le grand-père de Mojarra, Sun JSF 1.0 RI, et les premières versions du RI 1.1 ont été encombrées par des insectes désagréables. A ce moment-là (vers 2004-2006), MyFaces était certainement l'alternative plus stable.

Depuis 1.1_02 et 1.2_02 vers le début 2006, la nouvelle équipe de développement Oracle / Sun JSF a fait un excellent travail. Non seulement avec bugfixing, mais aussi avec des améliorations de performance. À mi-chemin de la vie Mojarra 1.2 (environ 2007-2009), Mojarra était le meilleur choix que MyFaces.

Depuis JSF 2.0, qui est venu avec une nouvelle direction d'économie d'état partiel, MyFaces était sage performances le meilleur choix en raison d'une approche différente et beaucoup plus efficace du calcul deltas de l'État, en particulier lors de l'utilisation de grands arbres qui le composent. Mojarra pris seulement depuis la version 2.1.22 . Au cours de la chronologie 2.0 / 2.1, Mojarra n'avait de sérieux problèmes avec <ui:repeat> dans des compositions complexes / imbriquées (sauvegarde de l'état ao brisé, le traitement ne dernière forme itérée, <f:ajax> échoué, etc.) et MyFaces et Mojarra ) pour se renseigner sur les questions précédemment fixes et les questions actuellement ouvertes. Si vous rencontrez un bug spécifique, essayez avec les deux mises en œuvre pour exclure l'un et l'autre. Rapport si nécessaire pour maintenir la qualité globale des deux implémentations haute.


  

aussi la page de téléchargement est en effet JSF Mojarra ?

Leur page d'accueil a été déplacé plusieurs fois. À l'heure actuelle (septembre 2017), il est situé à https://javaserverfaces.github.io Vous pouvez trouver les bibliothèques org.glassfish:javax.faces Maven Central aussi. Vous pouvez trouver le code source dans projet javaserverfaces/mojarra GitHub. Vous trouverez les instructions d'installation dans le README.md là-bas.


Voir aussi:

Autres conseils

La réponse vient de mon blog:

http://lu4242.blogspot.com/2011 /06/10-reason-why-choose-myfaces-core-as.html http://lu4242.blogspot.com/2012/05/understandingjsf-2-and- wicket.html

Mise à jour juillet 2013 : Voir la série d'articles et de la mise à jour pour 2013 à JSFCentral:

http://www.jsfcentral.com/articles/understanding_jsf_performance_3.html


Dans un premier temps, les deux implémentations vue JSF (MyFaces et Mojarra) font la même chose, parce qu'ils sont basés sur la même norme. Le fait que vous pouvez passer d'une application à l'autre est un fait de la qualité de la norme JSF spec.

Mais sur le fond, il y a beaucoup de raisons pour lesquelles MyFaces de base 2.x est mieux que Mojarra. Note Je suis un validateur du projet MyFaces, donc je vais vous donner ici juste mon point de vue:

  • Un grand nombre de questions a été corrigé. Seulement dans 2.0.x branche de 2.0.0-alpha 2.0.7 il a été fermé 835 questions. Cela donne une mesure « brute » du nombre de contributions et commentaires ont été fournis par la communauté au fil du temps. Ce sont les chiffres pour les questions fermées sur le temps: 2.0.0-alpha: 274, 2.0.0-beta: 58, 2.0.0-beta-2: 41, 2.0.0-beta-3: 39, 2.0.0 : 51, 2.0.1: 148, 2.0.2: 77, 2.0.3: 63, 2.0.4: 23, 2.0.5: 27, 2.0.6: 29, 2.0.7. 5

UPDATE mai 2012: 2.1.0: 47, 2.1.1: 6, 2.1.2: 84, 2.1.3: 9, 2.1.4: 74, 2.1.5: 7, 2.1.6: 35, 2.1.7: 52

  • Communauté sur le code: MyFaces compte de la communauté avec beaucoup de gens ayant des connaissances exceptionnelles sur JSF. Abonnez-vous à l'utilisateur et dev liste de diffusion sont la meilleure façon de savoir ce qui se passe, recevoir des commentaires et connaître d'autres personnes intéressées par JSF. Voir MyFaces listes de diffusion

  • Apache est bien connu pour prendre tout de Sun / Oracle et le rendre meilleur. Dans ce cas, MyFaces de base a quelques optimisations fraîches sur l'économie d'état partiel, des composants composites et bien plus encore!.

  • MyFaces Core est OSGi amical. Il fournit des interfaces SPI pour faire face à des configurations spéciales, lorsque vous avez besoin de plus de contrôle sur classloading.

  • MyFaces de base a une meilleure compatibilité avec facelets 1.1.x !. Il suffit de définir config web org.apache.myfaces.REFRESH_TRANSIENT_BUILD_ON_PSS true param et un mode spécial sera activé. Non c: si des balises ou c: forEach ou Ui: comprennent cassés plus !. Mise à jour, 2012 Un algorithme amélioré a été fait à l'intérieur MyFaces de base qui permettent de réduire la taille de l'État même dans les parties lorsque facelets est utilisé pour mettre à jour dynamiquement l'arborescence des composants. Ce n'est plus param nécessaire.

  • MyFaces a d'autres projets (Trinité, Tobago, Tomahawk, ExtVal, CODI, Orchestre, PortletBridge RI, ....) qui aide tune code garder, parce que tous les tests de ces projets contre MyFaces de base, et si est un bug, il est traité plus rapidement.

  • Vous pouvez facilement en utilisant la caisse svn et construire tout MyFaces projet, parce que tous Maven basés et la plupart des environnements de développement apporte un soutien Maven.

  • Mojarra à l'heure actuelle (JUN 2011) a quelques bugs désagréables liés à la sauvegarde de l'état, que MyFaces ne dispose pas parce que sa mise en œuvre est complètement différent. En fait, MyFaces état partiel d'économie offre une meilleure compatibilité avec l'algorithme état JSF 1.2 économie que Mojarra. Mais attention les gars Mojarra travaillent là-dessus, mais correctif qui prendront eux mois, même des années.

  • L'innovation se produit sur MyFaces.

Mise à jour, 2012

Voir cet article 10 raisons pour lesquelles choisir MyFaces de base comme JSF la mise en œuvre pour nousb applications

Pour les gars qui veulent voir une comparaison de la performance MyFaces Situés entre, Mojarra et regard Wicket comprendre JSF 2 et Wicket: Comparaison des performances

Mise à jour juillet 2013

La comparaison a été étendue à d'autres cadres tels que Spring MVC, tapisserie, Grails 2 et Wicket. Voir l'article à JSFCentral: Mise à jour juillet 2013 à JSFCentral

Je dirais qu'il n'a pas d'importance.

J'ai récemment lancé un projet JSF 2.0 en utilisant MyFaces et Primefaces. La semaine dernière, pour enquêter sur un bug, j'ai essayé de l'exécuter sur Mojarra. Tout ce qu'il a échangeait les jarres et la suppression des entrées MyFaces spécifiques dans web.xml - et tout a fonctionné sans aucun problème. Il est vrai que ce fut un prototype qui n'utilise pas toutes les fonctionnalités de JSF, mais j'ai été très impressionné par cette démonstration de la compatibilité via la conformité aux normes.

  

Pourquoi dois-je besoin de plus de pots si j'utilise   MyFaces?

  • myfaces-impl et JARs myfaces-api sont l'équivalent de jsf-impl et jsf-api de Mojarra.
  • myfaces-paquet contient ces deux pour plus de commodité, vous avez besoin ceci ou les deux autres, pas tous les trois.
  • Communes- * sont les bibliothèques qui contiennent des fonctionnalités de base utiles pour gérer les collections, les haricots Java, etc. que l'on aurait autrement à réimplémentez (probablement plus lent et avec plus de bugs). De nombreux autres projets utilisent ces derniers aussi bien.

Je tiens généralement à la mise en œuvre Mojarra moins qu'il y ait une raison pour aller avec autre chose. J'utilise Netbeans, il est donc plus facile d'utiliser la configuration du projet « par défaut » qui utilise Mojarra fonctionnant sous GlassFish.

dernier, j'utilisais MyFaces, c'était parce que je pensais à l'aide Tomahawk et il semblait raisonnable d'utiliser la mise en œuvre de JSF de la même source. Cependant, je suis passé à la place Primefaces et qui fonctionne très bien sous Mojarra.

En ce moment, il semble y avoir beaucoup de développement en cours avec les bibliothèques de composants JSF 2.0 à venir en ligne. Donc, vous devriez apprendre et être en mesure de basculer entre les implémentations JSF en cas de problème.

Les MyFaces raison a plus de pots en elle est qu'il a plus de fonctionnalités que de la mise en œuvre de référence.

IDE qui vous utilisez? si vous utilisez Eclipse il téléchargera jarres tout en créant projet JSF 2.0. Cochez cette http://www.icesoft.org/training/icefaces-self -Servir-training.jsf

Il n'y a pas beaucoup de différence entre mojarra et MyFaces. Vous pouvez vérifier que l'on est plus version stable. Comme Balusc a dit, MyFaces est la version la plus stable de (en 2005-2006). En outre, beaucoup de gens ont commencé à utiliser le Mojarra après 2.0, car il est devenu stable par rapport aux myfaces

J'avais des maux de tête graves avec mojarra (2.2.8), les comportements étranges comme les méthodes ajax seulement en cours d'exécution après la deuxième intervention de l'utilisateur grâce à des mises à jour du formulaire précédent. Tous les partis avec MyFaces.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top