Software Skills Training, Inc.
978-250-4983
Catalog Course Schedules In House Training Registration Student Feedback
Cost Effective Training Solutions



Register Now

Discount Programs

Enterprise JavaBeans and J2EE ™

Price: Contact SST for pricing  |  Duration: 5 days

Prerequisites: Java SE 5 programming experience and an understanding of object-oriented design principles. Fundamental knowledge of XML is helpful but not required.

Description: This hands on course provides participants with the information and lab experience necessary to develop and deploy robust J2EE™ (Java 2 Enterprise Edition) framework applications. The focus of the course is on building reusable components that exploit the services the J2EE platform provides via its component containers. The two most popular containers in the J2EE specification are the Web Container (which hosts HTML pages, servlets and JSP Pages) and the EJB Container (which hosts Enterprise JavaBean components). Both the EJB and Web containers, as well as details of the development and deployment of EJBs and Java based web content, are covered in depth in the course. Since the deployment descriptor of these applications is an XML file that is standardized across J2EE implementation servers, the participant will obtain the necessary experience to deploy applications across the various servers that meet Sun's J2EE specification (including WebSphere, Oracle, WebLogic and many others).

The participant will also become familiar with developing and deploying a Java component as a Web Service to a Web Service server. Session, entity, and message-driven beans, EJB container services, security, transaction and deployment issues are discussed in detail, with hands on labs to solidify understanding. Java enterprise protocols and services such as JNDI, JTS, JDBC and JMS are also covered. Students will learn how to utilize ANT, a flexible and powerful XML based Java build utility developed by the Apache foundation, to compile, deploy and execute stand-alone and enterprise Java applications. Comprehensive hands on coding labs ensure that by the end of the class students will be able to write and deploy applications that exploit J2EE services using EJBs, servlets, and JSP.

Enterprise Application Architecture
  • Understanding the Need for Client/Server Applications
  • Understanding Web Application Architecture
  • Developing Multi-Tier Applications
  • Understanding the Advantages of a Multi-Tier Architecture
  • Overview of Server-Side Application Development using J2EE
Deploying Enterprise Java Beans
  • Creating and Using the Deployment Descriptor
  • Adding information to a Deployment Descriptor
  • Using JNDI to Look Up EJBs
Deploying and Running Session Beans
  • Overview of the Session Bean Deployment Descriptor
  • Assigning Values to Environment Entries in the Deployment Descriptor
  • Container's Role in Activating Session Beans
  • Container Managed Time Outs
  • Transitioning Beans into a Method Ready State
Deploying and Running Entity Beans
  • Overview of the Entity Bean Deployment Descriptor
  • Generating Default SQL in Container Managed Persistent Beans
  • Modifying SQL to Suite the Database Tables
  • Specifying the Primary Key in the Deployment Descriptor
  • Writing EJB Query Language to Look up Entity Beans
  • Using EJB Query Language in the Deployment Descriptor
  • Performance Optimization in Entity Beans
SOAP (Simple Object Access Protocol)
  • Introduction to SOAP
  • Using SOAP
  • Understanding How XML is used in SOAP
  • Understanding SOAP Elements
  • Dealing with SOAP Faults
  • Developing SOAP Clients
  • Developing SOAP Receivers
Using ANT
  • Executing ANT Targets
  • Understanding ANT Tasks
  • Using ANT Properties
  • Configuring ANT
  • Compiling Java Applications
  • Executing Java Applications
  • Deploying WAR Files to a Java Web Server
  • Deploying JAR and EAR Files to a Java Application Server
EJB Security Model
  • Role-Driven Access Control
  • Security Identity
  • Security and the Deployment Descriptor
  • Using Security Roles
  • Accessing Security Information via EJBContext
Introduction to J2EE Web Applications
  • Understanding the Role of J2EE Containers and Services in Web Applications
  • Using Web-Based Components in Application Design
  • Structure of J2EE Web Components
  • Deploying Web Applications
  • J2EE Web Container Services
  • Web Component Lifecycles
  • Communication Between Web Containers and Web Application Servers
Developing Servlets
  • Processing GET and POST Requests from Web Clients
  • Retrieving Parameters from HTML Client Forms
  • Generating Dynamic HTML Responses
  • Initializing Servlets
  • Destroying and Freeing Resources in Servlets
  • Controlling Single and Multi-Threading in a Servlet
Developing JSP Tag Libraries
  • Writing Tag Handlers
  • Analyzing Tag Library Descriptor Files
  • Creating Tag Library Descriptor Tags
  • Using Tag Handler Methods to Generate Dynamic Web Content
  • Handling Tag Attributes and Attribute Validation
  • Using Body Tags
  • Working with the TagExtraInfo Class
Use of JavaBeans in Web Applications
  • JavaBean Architecture
  • Creating JavaBeans
  • Using JavaBeans in JSP Pages
  • Differences between JavaBeans and Enterprise Java Beans
Remote Method Invocation (RMI)
  • Purpose and Architecture of RMI
  • Using and Developing RMI Classes and Interfaces
  • Developing RMI Servers and Clients
  • Accessing RMI Servers with RMI Clients
  • Passing Primitive and Serializable Parameters between RMI Clients and Servers
Object Serialization
  • Purpose of Serialization in the J2EE Framework
  • Using Serializable Objects
  • Writing a Serializable Object
  • Reading a Serialized Object
  • Handling Serializable Exceptions
  • Customizing Serialization
  • Controlling Serialization
Introduction to Enterprise JavaBeans
  • How EJBs are Used
  • Bean Developer, Bean Deployer and Application Assembler Roles
  • Differences between Session, Entity and Message Driven Beans
  • EJB Container Services
  • Standard EJB Application Servers
  • Accessing Enterprise Java Beans
  • How to Obtain a Handle to EJBs from a Client
Session Beans
  • Coding The Home Interface
  • Using the Home Object
  • Coding The Remote Interface
  • Using the EJB Object
  • Implementing Business Logic
  • Differences Between Stateful and Stateless Beans
  • Understanding Container Callback Methods Specific to Session Beans
  • The Session Beans Life Cycle
  • Exceptions Related to Session Beans
  • Removing Session Beans with the Home Interface
Entity Beans
  • Developing the Entity Beans Home and Remote Interface
  • Using the Home and EJB Object
  • Managing Database Connections
  • Loading and Storing Entity Beans
  • Understanding Container Callback Methods Specific to Entity Beans
  • Defining the Primary Key for an Entity Bean
  • Persistence Management Techniques
  • Understanding Container-Managed Persistence
  • Understanding Bean Managed Persistence
  • Differences Between Container and Bean Managed Persistence
Message Driven Beans
  • Understanding the Life Cycle of a Message Driven Bean
  • Using Bean Managed Transactions
  • Using Container Managed Transactions
  • Overview of the Message Driven Bean Descriptor File
  • Communicating Between EJBs with Message Driven Beans
Web Services
  • Understanding the Purpose of Web Services
  • Developing a Web Service
  • Deploying a Web Service
  • Understanding WSDL Messages
  • Introduction to UDDI Schemas and Elements
  • Introduction to ebXML
  • Understanding the Issues with Web Services
Transaction Management
  • Container-Managed Transactions
  • Bean-Managed Transactions
  • The ACID Test for Transactions
  • Local and Global Transactions
  • Using JTA
  • Transaction Management and EJB Context
Java Messaging Service (JMS)
  • Architecture of JMS
  • Advantages of Using JMS
  • Using Classes and Interfaces in the JMS API
  • Developing a JMS Producer and Consumer
  • Variances in Vendor Support for JMS
Introduction to Servlets
  • Servlet Architecture
  • The Role of Servlets in Web Application Design
  • Servlet Runtime Environment
  • Advantages of Using Servlets
  • Servlet Lifecycle
  • Deploying Servlets to a Web Application Server
Review of JSP Fundamentals
  • Using JSP Page Directives
  • Inserting JSP Declarations
  • Displaying JSP Expressions
  • Inserting JSP Tags
  • Understanding JSP to Servlet Translation
Web Session Management
  • Maintaining Sessions via URL Rewriting
  • Understanding the Advantages and Disadvantages of using Cookies
  • Using Hidden Form Fields to Track Session IDs
  • Using the HttpSession Interface to Store Session Information
  • Transferring Client Information to Other Servlets and JSP Pages via Request Dispatching
Java Naming and Directory Interface (JNDI)
  • Purpose of JNDI
  • Role of JNDI Service Providers
  • Importing and Utilizing Default JNDI Packages
  • Working with Interfaces Provided by JNDI Service Providers
  • Binding Objects with the JNDI Service
  • Looking up Environmental Entries from an EJB
Accessing Databases with JDBC
  • Understanding the JDBC Connectivity Model
  • Using JDBC Drivers
  • Connecting to a Database
  • Executing SQL with JDBC
  • Processing Results from Query
  • Working with the ResultSet and ResultSetMetaData Classes
  • Utilizing Parameterized Statements
  • Calling Stored Procedures and Functions
  • Handling SQLExceptions
  • Using Batch Updates