Courses
 
 
J2EE design and development
 
Duration:   5 days Level:  Intermediate Format:   50% lab
 
Description:
This course can be delivered for JBoss-Eclipse, WebSphere-RAD/WSAD, or WebLogic-Workshop. EJB 3.0 features are covered.

J2EE is revolutionizing how the server-side business solutions are built and made to play with the web. This intensive course teaches you how to build J2EE applications (Servlets, JSPs, and EJBs) with Open source JBoss application server and Eclipse IDE. This course starts with the architectural design of J2EE and JBoss. The Eclipse IDE workbench features will be covered to understand how to build J2EE applications.
 
Topics:
1 Introduction to J2EE Architecture.
2 Servlet Fundamentals.
3 Advanced Servlets and Session Management
4 Servlet Filters
5 JSP
6 JSP Custom Tags
7 Deployment of J2EE Application on JBoss
8 Enterprise Java Beans
9 Session EJBs – Stateless and Stateful
10 Entity EJBs
11 EJB Development
12 Java Messaging Service (JMS)
13 J2EE Design Patterns
 
Contents:
1 Introduction to J2EE Architecture
 
  • What is J2EE?
  • J2EE Architecture
  • J2EE Application Components
  • J2EE Protocols
  • Development phases of a J2EE Application
  • Web Application development with Eclipse
   
2 Servlet Fundamentals
 
  • HTTP protocol revisited
  • Servlets and Servlet class instances Life Cycle
  • Core Servlet Interfaces and classes
  • HTTP Servlet Interfaces
  • Steps of Servlet request/response via HTTP
  • Servlets versus sockets/CGI versus CORBA/IIOP versus Session EJBs
   
3 Advanced Servlets and Session Management
 
  • HTTP request headers
  • HTTP response headers
  • Cookies
  • Hidden Fields and URL rewriting
  • HTTP session
   
4 Servlet Filters
 
  • Examples of using filters
  • APIs and Lifecycle
  • Configuration and basic steps for creating filters
  • Using filters to modify request and response
   
5 JSP
 
  • JSP concept
  • JSP syntax – comments, expression, scriptlets, declarations, page directive
  • JSP and servlet
  • JSP and beans with request, page, session, application scope
  • Handling errors with JSP pages
  • Forwarding with JSPs
  • JSP and applets
   
6 JSP Custom Tags
 
  • Defining tags structure, Tag handler class, tag library descriptor file
  • Types of tags
    • Simple tags
    • Tags with attributes
    • Tags with body
    • Nested tags
    • Cooperative tags
  • Complete programming steps for each type of tag
  • Interactions with Tag handler class (Life cycle)
  • Flow for translation of a JSP with custom tags to a HTML page
   
7 Deployment of J2EE Application on JBoss
 
  • Packaging and Deployment Descriptors
  • Deployment lifecycle
  • Editors for Deployment Descriptors
   
8 Enterprise Java Beans
 
  • Introduction to EJB
  • EJB specification
  • EJB Server
  • Types of EJBs
  • Deployment of EJBs
   
9 Session EJBs
 
  • Characteristics
  • State Diagram
  • Lifecycle
  • Stateless and Stateful EJBs
  • Programming Session EJBs - methods to implement
  • Pooling and Scalability issues
   
10 Entity EJBs
 
  • Comparison with session EJBs
  • State Diagram
  • Lifecycle
  • Pooling and Scalability issues
  • Programming CMP Entity EJBs - methods to implement
  • Finder methods
  • Various EJB to database mappings - Top down, Meet in the middle, bottom up
   
11 EJB Development
 
  • EJB Wizards
  • Generating Enterprise Application Projects
  • Generating Session beans
  • Generating Entity EJB with CMP
  • Mapping CMP Fields onto Database Columns
  • EJB relationships
  • Deploying EJBs into JBoss
  • Testing with UTC clients
   
12 Java Messaging Service (JMS)
 
  • JMS architecture
  • Messaging models - point to point and publish/subscribe
  • Message Driven Beans (MDB) – develop, deploy and run
   
13 J2EE Design Patterns
 
  • Model-View-Controller
  • Value Object
  • Session façade
  • Local Entities
  • Front Controller
  • Command
  • Fast Lane reader
  • Message Bean
   
Hands-on Labs:
1 ExWebApp: Introduction to Eclipse and JBoss
2 ExServlet: Create, deploy, and run servlets
3 ExSession : Managing Servlet Session
4 ExServletFilter: Use ServletFilters to modify Servlet request/ response
5 ExJSP: Create, deploy, and run Java Server Page Application
6 ExCustomTag: Create, deploy, and run JSP with Custom Tag
7 ExStatelessEJB: Lifecycle, performance, deployment of Stateless EJB
8 ExStatefulEJB: Lifecycle and deployment of Stateful EJB
9 ExEntityCMP: Lifecycle and deployment of Entity EJBs
10 ExJMS: Develop Message-Driven Beans
   
Prerequisites:
Experience in OOAD concepts required. Development experience in Java programming language required. Advanced Java concepts such as Threads, RMI, Exceptions, JDBC, Serialization desirable. Prerequisites can be satisfied by taking Eclipse University Courses “Java Programming” or “Advanced Java Programming”.
   
Audience:
Architects, designers, analysts, and developers.