Home > Articles > Programming > Java

Application Servers and Enterprise JavaBeans

  • Print
  • + Share This
In this article, author Paul Perrone describes how services are provided to enterprise application components by application servers, and examines who fulfills what role in these application server architectures. The article specifically focuses on Enterprise JavaBeans (EJBs) and discusses how EJB application servers help to application-enable an enterprise.
This article contains excerpts from Building Java Enterprise Systems with J2EE.
From the author of

Standalone Enterprise Applications

Direct use of Java enterprise APIs and technologies has historically required an application architecture as depicted in Figure 1. Here we see a "standalone" enterprise application utilizing the APIs offered by a database connectivity solution (for example, JDBC), a distributed enterprise communications paradigm (for example, CORBA, RMI, and DCOM), a set of distributed communications services (for example, JNDI, JMS, and JTS), and an enterprise security assurance solution (for example, Java Security).

Figure 1 Standalone enterprise applications.

Java enterprise applications built using such services run in a standalone manner without the use of any container environment or enterprise application framework. These applications are just plain old Java applications that you are probably familiar with, and they operate using a JDK 1.1 or Java 2, Standard Edition (J2SE) type of environment along with separately packaged standard Java extension APIs and implementations. In fact, such standalone applications were often the only option available to enterprise programmers using Java before the birth of application server environments.

Standalone enterprise applications, however, can require a lot of coding effort to make them fully functional in a multiuser, heterogeneous, distributed, secure, and scalable enterprise environment. For example, use of distributed communications-enabling technologies often requires an understand of a special interface language, requires thread-safety design considerations, and requires an understanding of how to create scalable server implementations. Use of JDBC also requires careful consideration of which drivers to use and how to create connection resources. This article explains how application server frameworks provide an infrastructure for such services. Furthermore, I pursue this discussion in the context of EJB application servers.

  • + Share This
  • 🔖 Save To Your Account