Learning Patterns Your Source for Quality Technology Courseware

Java EE (JEE6/JEE7) with JSF2, EJB3, and JPA2

Java Enterprise Edition (Java EE/JEE) is a powerful platform for building enterprise applications. This hands-on course is an accelerated course that covers the core technologies of JEE. It includes in-depth coverage of using JSF2 (JavaServer Faces 2), EJB3 (Enterprise JavaBeans 3), and JPA2 (Java Persistence API 2) to design and build your own multi-tier applications, as well as overview of other important technologies such as JAX-WS for building Java-based Web services.

The course begins with the Web tier - providing a brief overview of the Servlet API and technology, which is the foundation for JSF. It then moves on to comprehensive coverage of JSF2 - JEE’s component based UI framework - including coverage of Facelets and the JSF tag libraries. It moves on to cover EJB, the foundation of JEE’s business tier, including stateless and stateful session beans, and using its declarative transaction control. It then moves on to the business tier, covering JPA’s powerful Object-Relational mapping capabilities for accessing persistent data.

The course also provides overviews of other important technologies such as JAX-WS for building SOAP-based Web services, and JAX-RS for building RESTful services.

The course covers all the important concepts necessary to use the three core technologies of JSF, EJB, and JPA, as well as where the other technologies fit into the picture. It includes an extensive series of labs to exercise all major capabilities, and will leave you well prepared to use these technologies to build multi-tier enterprise systems.

Course Objectives:

  • JSF2
    • Be familiar with the Java Servlet API, and how servlets are the basis of JSF
    • Understand the shortcomings of servlets/JSP, and the need for a framework like JSF
    • Understand MVC and the JSF architecture
    • Create & configure applications using JSF
    • Understand and use Managed Beans to manage application data
    • Configure navigation rules for your Web application
    • Use facelets to create JSF2 Web pages
    • Use the JSF core and html tags and the JSF expression language
    • Lay out tables using the JSF h:datatable and associated tags
  • EJB3
    • Understand the EJB 3 architecture and API, and how it fits into the overall Java EE architecture
    • Understand and use the EJB 3 annotations
    • Create, deploy & use stateful & stateless session beans
    • Use CDI (Contexts and Dependency Injection) to initialize resources
    • Integrate JSF2 and EJB3
    • Understand distributed transactions, the Java Transaction API, and the EJB transaction model
  • JPA2
    • Understand the JPA architecture
    • Create JPA based applications
    • Understand and use JPA to map persistent objects to the database
    • Create JPA persistence units, and understand JPA persistence contexts and the Entity Lifecycle
    • Use the JPA EntityManager
    • Work with queries and JPQL (Java Persistence Query Language), as well as the Criteria API (JPA 2)
    • Understand and work with collections & associations
    • Understand the relationship between JPA / EJB3
    • Use JPA entities from session beans
  • Be familiar with other technologies, including JAX-WS for building Java-based Web services, and JAX-RS for building RESTful services
  • Understand the JEE architecture, and how to use each technology

Course Outline: