2009-03-19 25 views
16

Sarei felice di ottenere i riferimenti alle risorse e l'esperienza delle persone sul confronto dei noti implementazioni JSF: MyFaces e IceFaces in termini di ricchezza di componenti, la facilità di sviluppare, popolarità, la stabilità, il sostegno della comunità, eccConfronta implementazioni JSF

Aggiornamento

: come è stato sottolineato, la domanda iniziale non è sufficientemente accurata. Esistono poche implementazioni JSF (Apache MyFaces, implementazione di riferimento Sun) e alcune librerie di componenti JSF (IceFaces, RichFaces, Woodstock, ecc.). Ma comunque la mia domanda riguarda entrambe le implementazioni delle librerie di componenti JSF e JSF principali.

+0

Possibile duplicato di [implementazioni JSF e librerie componenti] (http://stackoverflow.com/questions/2167509/jsf-implementations-and-component-libraries) –

risposta

11

Attenzione!

JSF è una specifica. Pertanto, è necessario utilizzare un'implementazione, come quella fornita da Sun o quella fornita da Apache (MyFaces).

IceFaces è non un'implementazione, ma una libreria di componenti. Esistono altre librerie, come RichFaces, MyFaces Tomahawk e così via.

È possibile dare un'occhiata a here per le differenze tra le librerie dei componenti.

+0

Questo link non è più valido. Si collega alla pagina personale non correlata alla programmazione. – Jimmy

4

RichFaces sviluppato da Jboss sotto Redhat.

Ricchezza dei componenti: Un sacco di belle caratteristiche Ajax e componenti dell'interfaccia utente.

Facile da sviluppare: Soggettivo, ma io dico di sì.

Popolarità: v3.3.0 ha circa 13.000 download

Stabilità: Ancora in fase di sviluppo con nuove caratteristiche che viene aggiunto. Sistema in vigore per Bug Tracking.

sostegno comunitario: ha una bella linea demo con esempi di codice (quello sul sito Jboss devi effettuare il login per arrivare). C'è un forum e wiki sul sito di Jboss.

2

I secondi RichFaces. Tanta buona documentazione sulle pagine exadel (che Mark ha anche linkato) e anche una guida per sviluppatori molto bella su ogni componente. Complimenti per il core JSF + Richfaces (che ha anche un bel supporto Ajax).

+0

sono d'accordo.io uso questa combinazione – Inv3r53

4

Se si utilizza Sun RI o MyFaces non fa alcuna differenza. Entrambi implementano ciò che definisce lo standard JSF.

Per le librerie di componenti è necessario dare un'occhiata a:

  • ICEfaces (noi preferiamo questo)
  • RichFaces (hai per controllare quanto stretto è con il mondo JBoss già)
  • Tomahawk (il classico, ci sono voci che lo sviluppo è un po 'in fase di stallo)
  • Trinidad (Oracle ADF Faces kernel Open Source)

Questi sono importanti.Woodstock è morto e i ragazzi ICEfaces sono sulla buona strada per offrire un percorso di migrazione. Se lavori già con strumenti Oracle (ad es. JDeveloper), Trinidad è un buon candidato per iniziare. Se lavori con gli strumenti di JBoss, già RichFaces è un buon candidato per iniziare.

Per un uso più indipendente dare un'occhiata a Tomahawk e ICEfaces. ICEfaces consente di integrare i componenti Tomahawk, sebbene la skin non sia realmente compatibile. L'integrazione è una delle caratteristiche chiave di ICEfaces. Il supporto di IDE, Application Server e altri framework Open Source è brillante. L'integrazione Fac Facce è il meglio che puoi ottenere. La tecnologia push AJAX è la migliore implementazione push al momento. Un sacco di cose di JSF 2.0 fa già parte di ICEfaces 1.8.

Ecco un po 'di più il motivo per cui noi preferiamo ICEfaces:

http://blog.rainer.eschen.name/2008/09/22/icy-faces-for-more-than-a-year/

Per un'introduzione in JSF guarda qui:

http://blog.rainer.eschen.name/2008/03/10/how-to-start-the-jsf-dance/

Suggerimento: Mi è stato chiesto da Packt Publishing alla fine del 2008 per scrivere un libro su ICEfaces. Sarà disponibile alla fine di ottobre 2009. Sapendo questo, la risposta potrebbe essere un po 'parziale. Ma questo è il risultato di un lungo test e oltre 1,5 anni di esperienza con ICEfaces. È il meglio che puoi ottenere dalla tecnologia. Ho testato tutte le importanti implementazioni JSF Open Source, prima che il nostro progetto scelga finalmente ICEfaces.

9

Mi rendo conto che questo è un post in ritardo qui, ma poiché stavo cercando di espandermi e non l'ho visto: consiglio vivamente di controllare anche Primefaces. Sono ancora relativamente nuovo a JSF (1 anno di sviluppo), ma ho cercato di fare ogni nuovo sottoinsieme nella nostra fase di ricerca con una suite diversa.

Ecco la mia esperienza: Icefaces gestisce AJAX senza molto lavoro da parte vostra. Quando cerchi di fare qualcosa di relativamente semplice, Icefaces fa davvero un ottimo lavoro con un piccolo aggiornamento DOM e un'interfaccia utente reattiva. Consiglio vivamente che qualcuno di nuovo inizi qui dato che sarai in grado di far funzionare velocemente qualcosa e di imparare tutti i dettagli di JSF senza soffrire. (Ha anche strumenti Eclipse decenti)

Richfaces è una buona suite, gestisce ajax in una grana più fine (più vicino a come funziona JSF2.0) I componenti sono un po 'carenti a mio parere, ma se si sta personalizzando l'aspetto Richfaces è un posto migliore per iniziare in quanto generalmente si sente più facile da pelle. (Poi di nuovo, JSF2.0 semplice funziona per questo).

Recentemente ho provato Primefaces (http://www.primefaces.org). C'è molto più lavoro coinvolto in questa suite, per quanto può dire che ha un vantaggio significativo nel numero e nell'aspetto dei componenti. Di quanto sopra, mi piace lavorare su cose complesse in Primefaces che erano completamente frustranti in Icefaces.

Spero che questo aiuti un altro lettore, penso che tutte queste suite siano fantastiche. Se stai facendo un pazzo Javascript e hai bisogno di un controllo a grana fine, vai con Primefaces.

Un'altra piccola nota: se si tratta di una nuova applicazione, utilizzare JSF2.0: presenta vantaggi significativi e non ho ancora trovato nulla di frustrante.

+0

Come aggiornamento a questo, ho fatto un sacco di accesso mobile e mentre Icefaces è più frustrante con cui lavorare (cose complesse) ho trovato che le richieste/aggiornamenti AJAX sono significativamente più piccole, indipendentemente dalle dimensioni e si sentono più dinamici. È solo una nota, tramite 3G o connessioni migliori, è un punto controverso. –