Throughout this article I'll describe how an effective service-oriented
architecture (SOA) can be achieved using J2EE technologies. In particular,
I'll focus on which J2EE component types and communication channels to choose
according to specific, real-world situations.
Description of the Example System
To illustrate an SOA system made of J2EE technologies, nothing is better than
a good old example. Figure 1 depicts the main situations that can arise in a
realistic SOA system. A component stereotype indicates the type of client or
service; a dependency stereotype indicates the communication type, either as
a technology (such as Web services) or as a protocol (such as CORBA IIOP);
and a no dependency stereotype indicates RMI communication.
The system allows client systems to process an order (service OrderWorkflow),
manage customers (service Customer), and produce repo... (more)