Over View of JEE Web Application 

Objectives: with Book-marks on this page.

References :

  1. First Cup: http://download.oracle.com/docs/cd/E17410_01/javaee/6/firstcup/doc/docinfo.html
  2. http://download.oracle.com/docs/cd/E17410_01/javaee/6/firstcup/doc/firstcup.pdf
  3. JSP_JSF_Servlet_container.htm
  4. JSF_JSP_Facelets.htm

Step : 1 Let us Know Java  Platform Through a 3rd eye

  • Java-SE : Installed as a Virtual Machine and JEE runs from this contour.
Tributes of JEE :  (TOP)

There are two main streams that tribute the Web-Application of JEE, the first one is service oriented and the second is Presentation oriented.

  • Presentation-oriented:  The inclusions of XHTML, XML and Using customized tags are the most prominent changes that marked the evolution JEE 6.0 over its ancestors. The Java Server Faces Technology would lead this presentation platform. The web-client will have enhanced tools to present the request to the services that would resides at the provider ends. Java has beautiful faces, and let us present  Java Server Faces and Facelets. 
  • Service-oriented: The web server will entertain the requests from the "Presentation Templates" and respond dully processed finished products. The “Building Web Services with JAX-WS,” “Building RESTful Web Services. And,  let be served by the Servlets.

It is worth of mentioning that Servlets can be used in the both, but more suited this service oriented phase of web-application, and  Java Server Faces or Facelets can also be used in either platforms, but these render best uses in the Presentation-Platform.

The image below has been taken from http://download.oracle.com/docs/cd/E17410_01/javaee/6/firstcup/doc/firstcup.pdf

Step: 2 Change is Obvious, it is only beneficial when it is progressive .  Java-SE and Java-EE (TOP )

Java-SE also provides a virtual machine, and real JEE runs in-situ, all along.

From time to time, JEE goes through a cycle of evolution, and during this cycle we see new API, changes in the existing APIs, or revamped old APIs and so on. This primary action  also induces secondary impulses to the applications supporting JEE. For example, Visual JSF   plugins  was introduced in NetBean 6.0 and discontinued in the version NetBean 6.8.

We have been seeing this architectures for a while; that has been further tuned up by adding Java Server Faces and Facelets, which  accommodate many scriptures like Ajax, jQuery and so on.

A theme picture about JEE web-tier now may look like the one shown below, where many old tools are also refaced for dynamic uses.

 

Step: 3 Overview of Enterprise Applications : JEE-Oveview

The foundation of Java EE platform can be outlined below.

  • JEE  is designed to create large-scale, multi-tiered, scalable, reliable, and secure network applications.
  • JEE is made suitable to all businesses.
  • JEE is designed to ease developmental steps.
  • JEE is a tiered application with a scope of four main layers
    • Client Tiers: Usually remote users and send requests to JEE server
      • Client Tier can be a desktop client or Web-Client.
        • Web-Client making a simple request with a web page is often known as Thin Client.
    • Web-Tiers: Collects requests from client tier and returns the responses processed by the server applications. This layer retains all information about client's session. In order to accomplish these tasks, web-tier relies on Java Beans Components. This layer will contain JSF, JSP and Servlet pages.
    • Middle Tier for business logics, streaming the web-traffic, process clients requests and engage  EIS to support Business-logic with specific data / information. JavaBeans are the prime instruments of this layer.
    • and Enterprise Information Tier ( also known as Data Tier)

The scope of JEE-Servers are dynamic in nature. It posses great ability to stretch and flexibility to scale up or down to be a best fit to the client. This  allows  a great leverage to  the developers in testing different libraries, components and many tools provided by the vendor (currently Oracle Corporation).

This document  one hand offers a personal view points, on the other hand extends it's notion that the reader should  read the original documents  in this regard.

We use many tools like Text Pad, jEdit, JDeveloper, Eclipse with Ant, Maven, NetBean and others on various servers like Tomcat, GlassFish, JBoss, Sun Application Server and others.

Step: 4  Assigned tasks to the tiers:  Technologies in Web-Tier  ( to Be edited )

 Java EE application development concentrates on the middle tier to make enterprise application management easier, more robust, and more secure.

The Client Tier

It would be worth of looking at this page JSF_JSP_Facelets.htm
Technology Purpose
Servlets Java programming language classes that dynamically process requests and construct responses, usually for HTML pages
JavaServer Faces technology Allows you to include UI components (such as fields and buttons) on a page, convert and validate UI component data, save UI component data to server-side data stores, and maintain component state.
JavaServer Faces Facelets technology Facelets applications are a type of JavaServer Faces applications that use XHTML pages rather than JSP pages.
Expression Language A set of standard tags used in JSP and Facelets pages to refer to Java EE components.
JavaServer Pages (JSP) Text-based documents that are compiled into servlets and define how dynamic content can be added to static pages, such as HTML pages.
JavaServer Pages Standard Tag Library A tag library that encapsulates core functionality common to JSP pages
JavaBeans Components Objects that act as temporary data stores for the pages of an application

Step: Business Tier / Middle Tier

The following Java EE technologies are used in the business tier in Java EE applications:

  1. Enterprise JavaBeans (enterprise bean) components
  2. JAX-RS RESTful web services
  3. JAX-WS web service endpoints
  4. Java Persistence API entities
     

Step:  Enterprise Information System Tier

The following Java EE technologies are used to access the EIS tier in Java EE applications:

  • The Java Database Connectivity API (JDBC)
  • The Java Persistence API
  • The Java EE Connector Architecture
  • The Java Transaction API (JTA)

 

Step: Java EE Server

Java EE Servers (Application Server)

There are many application servers are available that support JEE application.

Java EE Containers, are the contours that holds the components and their supporting functions .The web container is the interface between web components and the web server. A web component can be a servlet, a JavaServer Faces Facelets page, or a JSP page. The container manages the component's lifecycle, dispatches requests to application components, and provides interfaces to context data, such as information about the current request.

The EJB Container

The EJB container is the interface between enterprise beans, which provide the business logic in a Java EE application, and the Java EE server. The EJB container runs on the Java EE server and manages the execution of an application's enterprise beans.

The picture speaks thousands words.

Reference of the image below : http://download.oracle.com/javaee/5/tutorial/doc/bnbyl.html

  • 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.

 

Step: Java EE Support

Web Services Support

Web services are web-based enterprise applications that use open, XML-based standards and transport protocols to exchange data with calling clients.

 

Step: Deployment Role

Below shows Tomcat server manager that allows to upload JEE application.

Step:

Step: