Advanced Java

J2EE Online Training

Duration – 45hrs

Web applications and HTTP basics

  • Servlets.
  • Servlet model.
  • Servlet Life cycle.
  • Servlet container model.
  • Coordinating servlets / Information sharing.
  • http servlet package.
  • Session management.
  • Filters.
  • Listeners
  • Web applications security.

JSP(Java Server Pages):

  • JSP Elements
    • Directives.
    • Declarations.
    • Scrip lets.
    • Expressions.
    • JSP Actions.
    • Comments.
  • Implicit objects.
  • Expression Language (EL).

Model1 and Model2 Architectures:

  • JSTL.
  • JNDI.
  • Resource Connections
  • JSP Elements
    • Data Source objects.
    • Connection pools.
  • JTA (JavaTransactionAPI).
  • MS (JavaMessagingService).
  • JSP Elements
    • Point-to-Point Messaging.
    • Publish/Subscribe Messaging.
  • RMI.
  • Design Patterns.

Overview of EJB 3.0:

  • What is an EJB?
  • Why should you use EJB?
  • When should you not use EJB?
  • What’s new in EJB 3.0?

The EJB 3.0 Simplified API

  • A quick review of annotations in Java 5
  • Overview of using annotations to develop EJB
  • Annotations vs. Deployment descriptors

Interceptors

  • Aspect Oriented Programming (AOP) in JEE
  • Intercepting methods
  • Building Interceptor Classes

Session Beans

  • Developing Stateless and Stateful beans
  • Related Annotations
  • Life-cycle of session beans
  • Session bean best practices
  • Linking UML modelling constructs with Session Beans

Message-Driven Beans

  • Introduction to asynchronous beans
  • Introduction to the Java Message Service (JMS) API
  • Configuring the activation context
  • Configuring the JMS message providers

Injectors

  • What are Injectors?
  • Using injectors to access resources and EJBs
  • Accessing the EJB context and the Environment Naming Context (ENC)
  • Setter injection
  • Simplifying lookup of beans and resources using injectors
  • Annotation used for injection

Java Persistence API (JPA)

  • Overview of Java Persistence API for EJB 3.0
  • Entity class and O/R mappings
  • Overview of packing and deploying entities

Entities

  • Persistent fields and properties
  • Entity relationship mappings
  • Inheritance mappings
  • Annotations and XML descriptors for defining mappings

Entity Operations

  • The Entity Manager interface
  • Entity instance life cycle
  • Entity listeners and call-back methods

Java Persistence Query Language (JPQL)

  • Overview of EJB 3.0 query language
  • 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)

EJB Timer Service

  • Overview of Timer Service
  • Timer Service APIs
  • Using injectors to inject Timer Service
  • Programming with Timer Service
  • Scheduling recurring tasks

EJB Transactions

  • Container vs. Bean managed transactions
  • Container-managed transaction attributes
  • Transaction propagation
  • Accessing the User Transaction service using injectors
  • Invoking the User Transaction service using JTA
  • Transaction Isolation attributes
  • Session Synchronized Stateful Session Beans
  • Transactions and exceptions
  • Using annotation to specify transaction attributes

EJB Security

  • Security annotations
  • Roles, Groups and Permissions
  • Declarative vs. Programmatic security
  • Accessing the Security services using the EJB Context
  • Switching the security context

Structs Frame Work

  • Tools
  • Eclipse.
  • My Eclipse.
  • Net Beans.
  • IBM RAD.
  • TOAD.

Web/Application servers

  • Tomcat.
  • JBoss.
  • Web logic.
  • Sun Server.
  • Web sphere