Tuesday, September 7, 2010

Introduction to Java EE 6

The aim of Java EE platform is to provide developer with a powerful set of APIs while shortening development time, reducing application complexity and improving application performance.

New technologies, including the following are available in Java EE 6:
  • Java API for RESTful Web Services (JAX-RS)
  • Managed Beans
  • Contexts andDependency Injection for the Java EE Platform (JSR 299), informally known as CDI
  • Dependency Injection for Java (JSR 330)
  • Bean Validation (JSR 303)
  • Java Authentication Service Provider Interface for Containers (JASPIC)

Also there are new features added Enterprise JavaBeans (EJB) components, servlets and Java Server Faces components.


Java EE Application Model

The Java EE application model defines an architecture for implementing services as multitier applications.This model partitions the work needed to implement a multitier service into the following parts:
  • The business and presentation logic to be implemented by the developer
  • The standard system services provided by the Java EE platform

The developer can rely on the platform to provide solutions for the hard systems-level problems of developing a multitier service.

Java EE multitiered applications are generally considered to be three-tiered applications because they are distributed over three locations: client machines, the Java EE server machine, and the database or legacy machines at the back end.
  • Client-tier components run on the client machine.
  • Web-tier components run on the Java EE server.
  • Business-tier components run on the Java EE server.
  • Enterprise information system (EIS)-tier software runs on the EIS server.

Java EE Components

Java EE applications are made up of components. 

A Java EE Component is a self contained functional software unit that is assembled into a Java EE application with its related classes and files and that communicates with other components.

The Java EE specification defines the following Java EE components.
  • Application/web clients and applets are components that run on the client.
  • Java Servlet, JavaServer Faces, and JavaServer Pages (JSP) technology components are web components that run on the server.
  • Enterprise JavaBeans (EJB) components (enterprise beans) are business components that run on the server.

Component based architecture makes Java EE applications easy to write because business logic is organized into reusable components.


Java EE Container

Containers are the interface between a component and the low-level platform-specific functionality that supports the component.

Before it can be executed, a web, enterprise bean, or application client component must be assembled into a Java EE module and deployed into its container.

The assembly process involves specifying container settings for each component in the Java EE application and for the Java EE application itself. Container settings customize the underlying support provided by the Java EE server, including such services as security, transaction management, JavaNaming and Directory Interface (JNDI) API lookups, and remote connectivity.

The container also manages nonconfigurable services, such as enterprise bean and servlet life cycles, database connection resource pooling, data persistence, and access to the Java EE platform APIs


Container Types

The deployment process installs Java EE application components in the Java EE containers.
  • Java EE server: The runtime portion of a Java EE product. A Java EE server provides EJB and web containers.
  • Enterprise JavaBeans (EJB) container:Manages the execution of enterprise beans for Java EE applications. Enterprise beans and their container run on the Java EE server.
  • Web container:Manages the execution of web pages, servlets, and some EJB components for Java EE applications. Web components and their container run on the Java EE server.
  • Application client container:Manages the execution of application client components. Application clients and their container run on the client.
  • Applet container:Manages the execution of applets. Consists of a web browser and Java Plug-in running on the client together.

    No comments:

    Post a Comment