JaiswalTraining

Get the online training



Corejava Servlet Jsp  Php  Hibernate  Ajax Web Service   Ejb2.1 Ejb3.0 Struts Struts2  JPA Spring Ibatis   JSF    JSF2.0  CoreJavaDesignPattern    Jquery  Flex J2EE-Design-Patterns  Jboss7  Maven  Contact Me                                                                                                                                                                        
            IGNOU SMU PTU Project                                           Training                                                                                                                              
              

Contact Us  0091- 9210721663         jaiswaltraining@gmail.com




Corejava
Servlet
Jsp
Php
Hibernate
Ajax
Web Service
Ejb2.1
Ejb3.0
Struts  
Struts2
JPA
Spring
Ibatis
JSF
JSF2.0
CoreJavaDesignPattern
Jquery
Flex
J2EE-Design-Patterns
Jboss7
Maven







JBoss3.x Series EJB

EJB 2.0
  • No compiler approach (speed of development)
  • Externalized stack of interceptors (AOP)
  • Full CMP 2.0 engine migrating to Hibernate backend
  • Integration with Tomcat in memory
  • Advanced Security





An EJB Container   

  • An EJB container is the sum of
    • Interceptors
    • Plugins per container
    • MBeans in the server





Transparent Middleware, AO and EJB3.0

  • Middleware as a collection of aspects, custom middleware
  • New Aspects
  • EJB 3.0
  • JBoss: professional open source

AO identifies aspects and gives programmers weaving semantics
Example of untangling:
  • A GUI with color syntax highlighting aspects in source is AO
  • It untangles code IN YOUR HEAD
  • Example tangled code:
 EJB 2.0: programmers use interfaces and code abstract getters and setters.  Intrusive programming model
  • Example untangled code:
  • EJB 3.0: programmers use POJOS and annotations.
  • Persistence by annotations, remoteness by annotations etc
  • AS TRANSPARENT AS IT CAN BE (POJO BASED

Transparent middleware

  • Impact of AO on middleware
  • Middleware offers services and aspects to programmers
  • How complex is it to apply an aspect to an objects

  • SIMPLIFICATION of programming models
  • Today middleware is mostly tangled specs
  • A component writer in EJB KNOWS about way to much system level issues
  • POJO based is the best we can do


EJB 3.0:  SIMPLIFICATION SIMPLIFICATION SIMPLIFICATION

  • Simple annotations
  • Systematic use of annotations to simplify programming
  • Eliminate need for XML deployment descriptors
  • Generation of interfaces if needed
  • Simple defaults
  • Systematic use of defaults
  • Configuration on exception only
  • Simple dependencies
  • Annotations
  • IoC, utility classes
  • Simple POJO programming model
  • No more homes, factory pattern
  • No more abstract getter/setter
  • Sessions can be remote, Entities are always local

The three types of Beans

  • Session Beans (service layer)
  • Provide synchronous (request-response conversation) client access to business services
  • Can be stateless (shared) or stateful (one per client)
  • Have NO persistent state
  • Entity Beans
  • Represent persistent components in the business model (database tables and columns)
  • Students, employees, documents, etc.
  • Shared between clients, but access is synchronized
  • Message Driven Beans (not efficient for real-time)
  • Provide asynchronous access to business services (a queue)
  • Invoked by messages instead of distributed method call
  • Clients do not interact directly with them


Simple CMP
  • POJO persistence
  • Entities are always local, use of new() POJO Model
  • Inheritance and polymorphism
  • No CMR
  • Simple and Powerful QL:
  • from EJBQL to HQL back to EJBQL again
  • Support for group-by, explicit inner and outer join, projections, bulk update and delete, dynamic queries, SQL queries
  • Close to HQL, SQL focus, ORDBMS focus unlike JDO
  • Simple callbacks
  • Implement only the callbacks you want
  • Simple testing
  • Testing behavior outside of a container
  • Work in progress
  • Sessions as application transaction, revolution for MVC designs
  • Detach-reattach? We recommend local and collocated designs