Java Enterprise Edition JEE 5 Training Course

Duration: 5 Days
Course code: SS-JEE-002
Audience
The Java Enterprise Edition 5 (JEE) training course is designed for professionals who have at least one year of experience with programming in Java. Experience in developing database applications and client-server applications would also be helpful.
  • Architects
  • Designers
  • Consultants
  • Developers
  • Technical managers
Prerequisites
Proficiency in Java is required
    Description
    The Java Enterprise Edition 5 (JEE) training course covers all aspects of JEE software development.

    The main theme of Java Platform, Enterprise Edition 5 (Java EE 5) is ease of development. While retaining the richness of the J2EE platform, Java EE 5 offers new and updated features such as EJB 3, Java Server Faces (JSF), and the latest web services APIs. This five-day course covers the issues of designing and implementing E-Business enterprise applications using the Java EE 5 platform with the latest tool sets that support it.

    The Java Enterprise Edition 5 (JEE) training course has been specially designed for professionals looking to build large-scale, scalable, robust, secure, distributed E-Business systems. It is an intensely hands-on course. More than 50% of the time will be spent on lab.

    The Java Enterprise Edition 5 (JEE) training course can be taught using any of the following application servers: JBOSS , WebSphere 7 , WebSphere CE , WebLogic and GlassFish . For the development environment, you may use Eclipse , Rational Application Developer or NetBeans . Please indicate your choice of the application server and the IDE while registering.
    Objectives
    The Java Enterprise Edition 5 (JEE) training course aims to teach a set of advanced skills necessary to implement robust, scalable, reusable e-business objects and enterprise applications using the Java EE 5 set of technologies. As part of the course, attendees will implement a comprehensive E-Business application that involves using various Java EE 5 components. This course also provides practical insights into architecting, good practices, and patterns. On completion, attendees would be able to:
    • Develop robust and industrial-strength enterprise applications using Java EE 5
    • Develop business objects using Enterprise JavaBeans (EJB) 3.0
    • Master the Java EE 5 architecture
    • Master design principles, best practices and patterns
    • Master major Java EE 5 APIs
    • Learn EJB 3.0
    • Model persistent data components using Entities and the Java Persistence API (JPA)
    • Implement queries using JPQL
    • Model business Use Cases using Session Beans
    • Model asynchronous business processes using Message-driven beans (MDB)
    • Schedule jobs using the EJB Timer Service
    • Use EJB 3.0 Interceptors
    • Use annotations for code injection
    • Build Servlets, JSP for the presentation tier
    • Use the scripting features of JSP Expression Language (JSP EL)
    • Use the JSP custom standard tag library, JSTL
    • Create Custom Tags
    • Use JAXP and JAXB to process XML content
    • Use JAX-WS to build Web Services
    • Use JMS to produce and consume asynchronous messages

    Outline for Java Enterprise Edition JEE 5 Training Course

    Java EE 5 Architecture
    • Overview of the Java EE 5 Architecture
    • Design issues in implementing e-business and enterprise applications
    • Design patterns for implementing e-business and enterprise applications
    • Java EE 5 Components, Containers and Connectors
    • Overview of Java EE 5 APIs
    • Major roles in designing, developing, and deploying Java EE 5 applications
    • Application packaging and deployment using WAR, JAR and EAR files
    Enterprise JavaBeans (EJB) Architecture
    • EJB Architecture
    • Designing and implementing Enterprise JavaBeans
    • Local vs. remote EJB
    • Entities
    • Session beans
    • Message-driven beans
    • Interceptors
    • Annotations and code injection
    Developing Entities
    • Java Persistence API (JPA)
    • Entity manager
    • Entity context
    • Modeling entity relationships
    • Modeling entity inheritance
    • Mapping persistent objects
    • Annotations
    • Transaction propagation
    Java Persistence Query Language (JPQL)
    • Overview of JPQL
    • Writing portable queries based on Entities
    • Building native queries for performance
    • Building custom finders
    • Polymorphism
    • Automatic storage of query results in plain old Java objects (POJO)
    • Lazy loading for performance
    Developing Session Beans
    • Session context
    • Designing and implementing session beans
    • The life cycle of a stateless session bean
    • The life cycle of a stateful session bean
    • Service locator pattern
    • Session facade pattern
    Java Message Service (JMS)
    • Introduction to messaging systems
    • Point-to-point model
    • Publish-and-subscribe model
    Developing Message-Driven Beans (MDB)
    • Message-Driven Beans and JMS destination
    • Client view of MDB
    • MDB lifecycle
    • MDB with JCA resource adapter
    EJB Timer Service
    • Overview of Timer Service
    • Timer Service APIs
    • Programming with Timer Service
    EJB Interceptors
    • Aspect Oriented Programming (AOP) in JEE
    • Intercepting methods
    • Building Interceptor Classes
    EJB Transactions
    • Container vs. Bean managed transactions
    • Container-managed transaction attributes
    • Transaction propagation
    • Accessing the UserTransaction service using injectors
    • Invoking the UserTransaction service using JTA
    • Transaction Isolation attributes
    • SessionSynchronized Stateful Session Beans
    • Transactions and exceptions
    • Using annotation to specify transaction attributes
    JEE Security
    • Security annotations
    • Roles, Groups and Permissions
    • Declarative vs. Programmatic security
    • Accessing the Security services using the EJB and the Servlet context
    • Switching the security context
    Migrating Pre-JEE 5 Applications
    • Interoperability of EJB 3.0 with earlier components
    • Adapting EJB 3.0 session beans to earlier clients
    • From entity beans (EJB 2.x) to JPA entities
    • From deployment descriptors (XML) to annotations
    • Coexistence of EJB 3.0 and EJB 2.1 APIs in bean classes
    Java Servlets
    • Overview of Java Servlets (2.5)
    • Using Servlets to generate dynamic web pages
    • HTTP Servlets
    • Session Management
    • Filters
    • Multi-threading issues in Servlet design
    Java Server Pages
    • Overview of Java Server Pages (JSP 2.1)
    • JSP scripting
    • The EL Expression Language
    • Using the JSP Standard Custom Tag Library (JSTL)
    • Actions and implicit objects
    • Session management
    • Accessing JavaBeans in JSP pages
    • Model-2 web tier framework
    • Business delegate pattern
    Java Server Faces (JSF)
    • The JSF component model
    • The JSF request-response life cycle
    • Building Web applications using JSF
    • Configuring managed beans
    • Navigation rules and workflow
    • Best practices
    XML Processing
    • Introduction to XML
    • SAX and DOM parsers
    • XML processing with JAXP
    • XML and Java interoperability with JAXB
    Introduction to Web Services
    • What is a Web Service?
    • Components of a Web Service
    • Building Web services using JAX-WS
    • Exposing session beans as web service end points
    Java Mail
    • Introduction to the JavaMail API