Enterprise Javabeans (EJB) is the standard component architecture for the creation of distributed business applications in the programming language Java. EJB offers all mechanisms necessary for the creation of applications for enterprise-wide deployment and for the control of critical business processes. Application developers can profit from distribution of processes, transaction security, pooling of network connections, synchronous and asynchronous notification, multithreading, object persistence, and platform independence. With EJB, programming remains relatively simple.
In March 1998 the first specification of Enterprise JavaBeans was published by Sun Microsystems. In relatively short order there followed in December 1999 the consolidated version 1.1. In the meantime, the component architecture has accounted for considerable change in the market for application servers, so that today, the large majority of application servers support EJB. EJB has also established itself in the growing market for finished application components. Today, there exists a large market for everything from specialized solutions to specific problems to complete application frameworks.
In August 2001 version 2.0 was released. The new version offers considerable extensions and improvements, which are considered in this book, now in its second edition. The first edition has been greatly revised in order to take account of the following developments:
The new message-driven beans (EJB 2.0) offer completely new ways to achieve asynchronous communication and parallel processing of business logic. This is made possible by the integration of the Java Message Service (JMS) into tht EJB architecture.
Local interfaces (EJB 2.0) enable optimization of process-internal communication among Enterprise Beans and between local clients and Enterprise Beans.
The persistence manager has been introduced (EJB 2.0). With relationships between entity beans it is now possible to model complex data structures. The associated query language EJB QL makes it possible to work efficiently with these structures.
A new chapter (Chapter 8) deals with security issues of EJB.
The chapter on practical applications (Chapter 9) has been greatly expanded.
All the examples have been reworked, with emphasis on ease of execution.
Today, one may safely state that Enterprise JavaBeans has brought the success of the programming language Java to the server, particularly in the areas of portals and integration of older applications, where EJB has become a widely used solution strategy. However, information technology is on the verge of yet new changes. The trend today is in the direction of freely combinable application components from a variety of producers that are connected via web services. EJB 2.0 offers answers to these growing requirements. Particularly the new developments in the areas of marketplaces, private stock exchanges, e-procurement, and electronic funds transfer can profit from using EJB as the base architecture.
This book is directed to the reader who wishes to learn more about Enterprise JavaBeans. It discusses the fundamental concepts underlying the EJB architecture. Building on this foundation, it explains the technical details and concrete programming of Enterprise Beans. Many examples are used to clarify and expand on the concepts introduced. The source code for all the examples in this book is available at http://www.apress.com in the "Downloads" section. A knowledge of the Java programming language and a basic understanding of distributed programming are prerequisites for reading this book.