Cara se você quer um curso BOM, COMPLETO e o melhor, DE GRAÇA, dá uma olhada no http://www.javapassion.com/
Lá tem vários cursos, todos de graça, com material, exercícios e até mesmo certificado. Estou cursando o Java EE e estou gostando muito.
Dá uma olhada na ementa do curso:
<blockquote> 1. Introduction
* Introduction of this course - (Nov. 19th, 2007: Week #1)
* Java EE Overview (2 hours lecture) - (Nov. 19th, 2007: Week #1)
2. Web Core Technologies: Servlet and JSP
* Web Application Structure (1 hour lecture + 1 hour lab) - (Nov. 26th, 2007: Week #2) (homework #1)
* Servlet Basics (2 hour lecture + 1 hour lab) - (Nov. 26th, 2007: Week #2) (homework #2)
* JSP Basics (2 hour lecture + 2 hour lab) - (Dec. 3rd, 2007: Week #3) (homework #3)
* Using NetBeans for Developing Web Applications (2 hour lab) - (Dec. 3rd, 2007: Week #3) (homework #4)
* Servlet Advanced (2 hour lecture + 2 hour lab) - (Dec. 10th, 2007: Week #4) (homework #5)
* Session Tracking (1 hour lecture + 1 hour lab) - (Dec. 10th, 2007: Week #4) (homework #6)
* Expression Language (0.5 hour lecture + 1 hour lab) - (Dec… 17th, 2007: Week #5) (homework #7)
* JSP 1.2 Custom Tags (1 hour lecture + 1 hour lab)
* JSP 2.0 Custom Tags (1 hour lecture + 2 hour lab)
* JSTL (2 hour lecture + 2 hour lab) - (Dec. 17th, 2007: Week #5) (homework #8)
* Building Bookstore sample applications
3. JDBC, SQL, ANT, JUnit, Version Control
* SQL (1 hour lecture + 1 hour lab) - (Jan. 7th, 2008: Week #6) - there is no homework
* JDBC (1 hour lecture + 1 hour lab) - (Jan. 7th, 2008: Week #6) (homework #9)
* ANT
* JUnit (1 hour lecture + 1 hour lab)
* SubVersion
* Maven ()
4. Web-tier Security
* Security Basics (1 hour lecture)
* Web Application Security (2 hour lecture + 2 hour lab) - (Jan. 14th, 2007: Week #7) - there is no homework!
* SSL (1 hour lecture)
* Web Application Security Threats and Counter-measures (1 hour lecture + 1 hour lab)
5. Struts
* MVC (Model-View-Controller) framework (0.5 hour lecture) (Jan. 28th, 2008: Week #8) - there is no homework
* Struts Basics (2 hour lecture + 2 hour lab) (Jan. 28th, 2008: Week #8) (homework #11)
* Step by Step Guide for Building a Simple Struts application (1 hour lecture) - (Jan. 28th, 2008: Week #8) - no homework
* Struts Sample Applications (2 hour lab)
* Struts Tags (1 hour lecture + 1 hour lab)
* Struts Advanced (2 hour lecture + 2 hour lab) - hands-on lab not ready
* Struts Validation Framework (1 hour lecture + 1 hour lab)
* Tiles Framework (1 hour lecture + 1 hour lab) - (Feb. 11th, 2008: Week #9) (homework #12)
* Struts Testing, Debugging, Logging, and Performance (1 hour lecture + 1 hour lab)
* Struts Best Practices (1 hour lecture)
* Struts and Databases (1 hour lecture) - hands-on lab not ready
* Struts Security (0.5 hour lecture)
6. Struts 2
* Struts 2 Basics (2 hour lecture + 1 hour lab) - (Feb. 18th, 2008: Week #10) (homework #13)
* Struts 2 and Ajax ()
* Struts 2 and Tiles
* Struts 2 and view technologies
7. JavaServer Faces (JSF)
* JSF basics I
* Building “Hello World” JSF applications (0.5 hour) - (Feb. 25th, 2008: Week #11) no homework
* Step by step guideline for building “Guess a Number” JSF application (1.5 hour lecture + 1 hour lab) (Feb. 25th, 2008: Week #11) (homework #14)
* JSF basics (1 hour lecture + 1 hour lab) (Feb. 25th, 2008: Week #11) - no homework
* JSF Component Model (1 hour lecture + 1 hour lab)
* JSF tags (0.5 hour lecture + 1 hour lab)
* JSF basics II
* Managed Beans (0.5 hour lecture + 0.5 hour lab)
* Page navigation (0.5 hour lecture + 0.5 hour lab)
* Event model (0.5 hour + 0.5 hour lab)
* Life-cycle and PhaseListener (0.5 hour lecture + 0.5 hour lab)
* Immediat flag (0.5 hour lecture + 0.5 hour lab)
* Styling with CSS (0.5 hour lecture + 0.5 hour lab)
* Validation
* Validation (0.5 hour lecture + 0.5 hour lab)
* Client side validation (0.5 hour lecture + 0.2 hour lab)
* Conversion
* Converter (0.5 hour lecture + 0.5 hour lab)
* Data tables
* Data table (0.5 hour lecture + 0.5 hour lab)
* JSF and Persistence (0.5 hour lecture + 0.5 hour lab)
* Sample apps
* Walk-through of Carstore sample application (1 hour lecture + 1 hour lab)
* Walk-through of Bookstore sample application (1 hour lab)
* Building some JSF applications (1 hour lab)
* Tiles
* Tiles overview (1 hour lecture + 1 hour lab)
* Using JSF-enabled IDE
* NetBeans Visual Web Pack basics (0.5 hour lecture + 1 hour lab)
* NetBeans Visual Web Pack advanced (1 hour lab)
* Building JSF components
* Building a JSF component (1.5 hour lecture + 1.5 hour lab)
* RenderKit (1 hour lab)
* Building useful components (1 hour lab)
* Related frameworks
* Facelets (1 hour lecture + 2 hour lab)
* Shale dialog (1 hour lecture + 1 hour lab)
* Spring Webflow and JSF (0.5 hour lecture + 0.5 hour lab)
* Spring framework and JSF (0.5 hour lecture + 0.5 hour lab)
* Seam
* JSFTemplating ()
* 3rd-party JSF components
o Tomahawk components from MyFaces Apache project (1 hour lecture + 1 hour lab)
o ADF components (1 hour lecture + 1 hour lab)
o Misc components (1 hour lecture + 1 hour lab)
* Woodstocok JSF components
o Wookstock components (1 hour lecture + 1 hour lab)
o Building Woodstock components ()
o Wookstock components and Ajax ()
* JSF and Ajax
o Ajax Basics (1 hour lecture + 1 hour lab) - from Ajax programming course
o Building Ajax applications (0.5 hour lecture + 0.5 hour lab)
o DynaFaces
o Ajax4jsf
* JSF and Portal/Portlets
o JSF and Portlets (1 hour lecture)
* Testing and Debugging tools
* Testing tools
* Localization
o Localization
- Other Web-tier Frameworks
* Shale (The next generation Struts/JSF) (1.5 hour lecture + 2 hour lab)
* Tapestry
* Echo2
* Wicket
* Comparing various Java Web Application frameworks
- EJB 2.x
* EJB 2.x Overview
* JMS
* Session Beans
* Entity Beans
- Java EE 5, EJB 3.0, Java Persistence API (JPA)
* Introduction to Java EE 5 (2 hour lecture)
* EJB 3.0
o EJB 3.0 Enterprise Beans Overview (2 hour lecture + 2 hour lab) (March 10th, 2008: Week #12) (homework #15)
* JPA
* Java Persistence API (JPA) Basics (1 hour lecture + 1 hour lab) (March 10th, 2008: Week #12) (homework #16)
* Java Persistence Query Languate (JPQL) (1 hour lecture + 1 hour lab)
* Java Persistence API (JPA) Transaction (1 hour lecture + 1 hour lab)
* GlassFish
o GlassFish (1 hour lecture + 1 hour lab)
- Design patterns, Best practices, Performance tuning, etc
* Java EE Design patterns
* Performance tuning
* UML
- Hibernate
* Hibernate Step by Step (1 hour lecture + 1 hour lab) - (March 17th, 2008: Week #13) (homework #17)
* Hibernate Basics (2 hour lecture + 2 hour lab) - (March 17th, 2008: Week #13) (homework #18)
* Hibernate Mapping (2 hour lecture + 2 hour lab) - (March 24th, 2008: Week #14) (homework #19)
* Hibernate Query Language (2 hour lecture + 2 hour lab) - (March 24th, 2008: Week #14) (homework #20)
* Hibernate Transaction and Concurrency (work in progress)
* Hibernate Interceptors and Events (work in progress)
* Hibernate Join Fetch (partially ready) (March 24th, 2008: Week #14) - no homework
* Hibernate Caching (1 hour lecture + 1 hour lab)
- Spring framework
* Spring framework basics
* Refactoring HelloWorld application using Spring framework (1 hour lecture + 2 hour lab) - (April 7th, 2008: Week #15) (homework #21)
* Spring framework Dependency Injection Basics (1 hour lecture + 2 hour lab) - (April 7th, 2008: Week #15) (homework #22)
* Spring framework Dependency Injection Advanced (1 hour lecture + 2 hour lab)
* Spring framework and persistence
* Spring framework and Hibernate (1 hour lecture + 2 hour lab) - (April 14th, 2008: Week #16) (homework #23)
* Spring framework and JPA (1 hour lecture + 1 hour lab) - (April 14th, 2008: Week #16)
* Spring framework Web-tier technologies
* Spring MVC (2 hour lecture + 2 hour lab) - (April 28th, 2008: Week #17) (homework #24)
* Spring Web Flow (1 hour lecture + 2 hour lab) - (April 28th, 2008: Week #17 - end of the course) (homework #24)
* Spring integration with Struts - (0.5 hour lecture + 2 hour lab) - hands-on lab not ready yet
* Spring integration with JSF - (0.5 hour lecture + 2 hour lab) - lecture and hands-on lab not ready yet
* Spring AOP
* Spring AOP Basics (1 hour lecture + 1 hour lab)
* Spring and Java EE
* Spring framework and J2EE (JMS) (2 hour lecture + 2 hour lab) - hands-on lab not ready yet
* Spring framework and Web Services (1 hour lecture + 1 hour lab)
* Spring and Transaction ()
* Misc.
* Advanced Spring framework (1 hour lecture + 1 hour lab)
* Spring Sample applications - Pet Clinic (0.5 hour lecture + 0.5 hour lab)
* Acegi security with Spring framework - hands-on lab is not ready
* Spring and testing ()
- Portlets and Portal
* Portlet Basics
- Deployment, Provisioning, and Management
* Sun Provisioning Server