Concordo anche io, l'uso di framework oggi giorno è indispensabile...ma un framework è qualcosa che ti dà delle componenti "prefatte" e sopratutto ti vincola ad una specifica logica e ad un'insieme di convenzioni...non si và a sostituire a Java EE...diciamo che và a strutturare JAVA EE
Un framework infatti a grandissime linee è un insieme di classi (concrete ed astratte) e di interfacce. Tu usi le classi che ti vengono fornite prefatte ed implementi le interfacce fornite dal framework in modo tale che la tua applicazione aderisca alla logica del framework (per esempio in Spring non creerai più gli oggetti ma sarai costretto ad iniettarli da una factory implementando un pattern chiamato inversione del controllo...la logica di base è che tu hai una factory che ti crea tutti gli oggetti di cui hai bisogno. Poi nelle varie classi inceve di fare new, chiami la factory e ti fai iniettare un certo tipo di oggetto...molto a grandi linee....conosco poco Spring...solo per rendere l'idea di cosa significa che un framework ti vincola ad una sua logica...ma sempre Java EE rimane...)
Comunque...Spring è moltooooo complesso (e tratta un po' tutti gli argomenti: applicazioni nella shell, applicazioni desktop, applicazioni web). Io ti consiglierei di iniziare a vedere in modo sensato Java EE (ma senza perderci troppo tempo, difficilmente lavorerai senza framework) e poi ti consiglierei di iniziare con IceFaces che invece è molto richiesto. Magari vediti decentemente il concetto di MVC (Model View Controll)
IceFaces è un framework JAVA EE di presentazione (quindi esula da tutto ciò che riguarda la logica di businness e si concentra solo sulla presentazione "grafica"). In pratica serve a realizzare applicazioni RIA (Rich Internet Application) che sono applicazioni web con un'interfaccia grafica simile alle applicazioni desktop (in pratica applicazioni che senza fare il refresh della pagina aggiornano i loro contenuti...di fatto viene fatto implementando Ajax in modo trasparente, senza che ti devi studiare Javascript e dandoti tante cose interessanti...tipo: gli passi una collezione contenente dei dati...e lui in base alla collection ti crea una tabella da visualizzare nella pagina)...comunque fai prima a capire di cosa si tratta guardando gli esempi dello showcase che ti mostra i vari componenti messi a disposizione dal fremework con descrizione e codice:
http://component-showcase.icefaces.o...showcase.iface
Su IceFaces ci sono molti manuali e documentazione...è molto usato e richiesto...noi ad esempio lo stiamo usando per creare portlet RIA da inserire dentro un portale LifeRay
Poi magari dopo aver imparato bene IceFaces passerei a vedermi o un framework tipo Spring o un portale tipo LifeRay (ma secondo me quelli ti conviene vederli in azienda con qualcuno accanto che già li sà usare perchè se no può essere frustrante)
Secondo me se ad un'azienda ti proponi che già conosci di tuo Java EE + IceFaces già ti guardano bene...
Spero di esserti stato utile
Ciao
Andrea