| |
| |
| |
|
|
|
Intense Java Enterprise Edition, version 5 (JEE 5)
|
|
Duration:
5 Days
|
|
|
This 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
| |
|
|
|
Description
|
The main theme of Java Platform, Enterprise Edition 5 (Java EE 5) is ease
of development. While retaining the richness of the J2EE 1.4 platform,
Java EE 5 offers new and updated features such as EJB 3.0, JavaServer 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.
This 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.
This 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
|
This 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
|
|
Course Outline
|
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 Securty 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
JavaServer Pages
-
Overview of JavaServer 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
|
|
|
|