Chapter 2. Choosing a Web Application Architecture

The Java EE specification defines many different technologies in great detail, but it does not actually define the architecture of a Java EE application. For example, the EJB specification describes the behaviors and characteristics of Enterprise JavaBean components and the rules that dictate how they are to be managed by the application server, but the specification does not define the proper choice for a given application. It is up to the system architect on the project to define rules governing the use of session beans, message-driven beans, and other EJB components.

Similarly, the Java EE specification defines the three key technologies for web applications, Java servlets, JavaServer Faces, and JavaServer Pages, but it does not specify how they should be used in an application. As a result, the Java EE community has adopted a wide variety of de facto standards and design patterns for designing web applications based on lessons learned by early adopters.

This chapter examines the presentation requirements that drive web application architectures and makes specific recommendations to help you choose an appropriate architecture for your WebLogic Server application.

Architecture Key Concepts

Before embarking on a discussion of presentation requirements and architecture drivers, we need to step back and review some key concepts related to Java EE architecture.

Java EE Application Tiers

The Java EE specification and related documentation ...

Get Professional Oracle® WebLogic Server now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.