2012-05-15 5 views
8

Ho una semplice domanda (e sciocco - vergognimi :)JSF su Tomcat - perché è possibile?

Per quanto ho capito, Tomcat è un contenitore Web che implementa le specifiche Servlet/JSP. Tomcat non è un app server Java EE a piena potenza, pertanto non è possibile distribuire ed eseguire un'applicazione basata su EJB su Tomcat.

Fin qui tutto bene.

Ma ... Sono in grado di distribuire ed eseguire applicazioni JSF su Tomcat. JSF - per quanto ho capito - fa parte di Java EE ed è "supportato" da EJB (ad esempio, si utilizzano bean stateless/stateful).

In conclusione: perché sono in grado di eseguire applicazioni JSF supportate da EJB e non in grado di distribuire un'applicazione EJB "regolare" (ad esempio, non-JSF).

Grazie in anticipo =)

+4

JSF non è supportato da EJB, è un framework costruito su Servlet. –

+1

Ciao - grazie, Luiggi. Mentre stavo codificando usando JSF (devo confessare che sono abbastanza nuovo al JSF) ho pensato che le classi di backend fossero EJB. Colpa mia. Saluti. – cldjr

+1

È possibile trovare ulteriori informazioni in [Specifica JSF] (http://javaserverfaces-spec-public.java.net/) e [documentazione Oracle] (http://docs.oracle.com/javaee/5/tutorial/ doc/bnaph.html). –

risposta

3

Come altri hanno già chiarito, EJB! = JSF. Detto questo, puoi far funzionare EJB con Tomcat e JSF tramite Apache TomEE. È possibile rilasciarlo in un'installazione Tomcat 7 o semplicemente utilizzare un file binario già configurato. TomEE è stato costruito esattamente per rispondere alla domanda "chi faccio uso di X su Tomcat".

Questo è anche uno getting started video che mostra EJB, CDI che funziona su Tomcat collegato a Eclipse.