Enterprise JavaBeans (EJB)
Price On RequestIntroduction to EJB teaches attendees the skills they need to successfully develop all types of Enterprise JavaBeans, including session beans, entity beans, and message-driven beans. This course is taught using the EJB 3.0 framework.PrerequisitesAll attendees should have a solid Java programming experience. Some experience with distributed systems development, especially object-based systems such as Java RMI, CORBA, or COM, is a plus. Some knowledge of JDBC is helpful in understanding the EJB persistence model. Understanding of XML is a plus but is not needed.Course ObjectivesUnderstand the role of EJB in the broader Java EE platform.Describe the features that are implemented by an EJB container on behalf of application components.Build stateless session beans as part of a service layer or SOA.Build JPA entities to represent persistent data records within the Java application.Develop systems of entities to manage complex data models including 1:1, 1:N, and N:N associations.Manage transactional behavior of the application through declarative and programmatic techniques.Invoke EJB sessions from Java web applications.Use dependency injection and JNDI names to assemble complex web/EJB systems with minimal fuss and maximal flexibility.Implement message-driven beans to process queued messages asynchronously.Course Outline:Introduction Overview of EJB and Java Persistence API (JPA) Goals of EJB, EJB in the Java EE architectureEJB 3.0 Overview Session Beans, Persistent Entities, Message Driven BeansSession Beans Session Bean Overview Services provided, Stateless and Stateful BeansDefining a Session Bean - EJB 3 AnnotationsThe Bean Implementation, Remote and Local Business InterfacePackaging and Deployment ejb-jar file, Deployment Descriptors in EJB 3EAR fileThe EJB ContainerJNDI Overview Distributed Naming and LookupContext and InitialContextUsing JNDIWriting an EJB 3 Client Client View of a Session BeanPortableRemoteObject and CastingRunning the ClientAdditional Capabilities Resources and Dependency Injection EJB referencing another EJBReferencing Resources, Environment EntriesConnection Factories (DataSource and others)Session Bean Lifecycle and Interceptors Stateless Session Bean LifecycleBusiness Method Interceptors, InvocationContext, Lifecycle Callback Interceptors, Interceptor ClassesStateful Session Beans OverviewDefining, Client RelationshipLifecycle, Activation, PassivationTimer Service Overview and usageMessage-Driven Beans Overview of Messaging Systems Messaging, Loose CouplingPub/Sub, Point2PoinOverview of JMS API Overview and StructureConnectionFactory and DestinationJMS Producer and Consumer Client exampleJMS MessagesMessage-Driven Beans (MDB) Overview and Goals@MessageDriven and MDB exampleConfiguring with activationConfigState Diagram and InterceptorsTransactions and Security Overview of Transactions and Transactional Systems ACID, Tx Lifecycle, Tx Manager, Transactional ObjectsTransactions in EJB 3 Declarative Transaction ManagementTransaction Attributes and Transactional ScopeTransaction Scenarios and Bean-Managed Tx