The release of the 1.3 version of the Java 2 Platform, Enterprise Edition (J2EE) represents the evolution of Sun Microsystems' server-side development platform into a more mature and sophisticated specification. Servlets 2.3 gain events and filtering; JavaServer Pages (JSP) 1.2 gain a new XML syntax and enhancements to the custom tag mechanisms; and Enterprise JavaBeans (EJB) 2.0 has some significant changes to its container-managed persistence model, as well as support for asynchronous processing with the new message-driven beans.
This book demonstrates how to design and construct secure and scalable n-tier J2EE applications, using JSP and servlets for the web tier and EJBs for the business logic. It also covers J2EE Connector Architecture that allows you to easily integrate your J2EE applications to enterprise information systems.
Chapter 24 - J2EE Packaging and Deployment
As you know, the J2EE specification comprises a number of functional sub-specifications. However, it is not always obvious how these should be put together to form a complete J2EE application. The J2EE specification provides guidelines for the structuring and the creation of J2EE applications and one of the major ones is related to packaging. Individual specifications provide guidelines for the packaging of individual components such as EJBs, JSP pages, and servlets. The J2EE specification then dictates how these heterogeneous components are themselves to be packaged together.
This chapter provides a thorough analysis of the J2EE packaging mechanism. We will not cover how to build EJB, web application, or resource adapter archive files. These aspects of J2EE are discussed in earlier chapters of their own. Instead, we will focus on the relationships that these components have within an EAR file, and the process involved in building EAR files.
Some of the questions we will ask are:
- What are the rules for using J2EE packaging as opposed to component packaging?
- What can be placed into a J2EE package?
- Is J2EE packaging necessary and are there behavioral changes that occur as a result of using J2EE packaging?
In answering these questions we will learn:
- How J2EE class loading schemes work
- How to create Enterprise Archive (EAR) files
- How to deal with dependency and utility classes