Today’s business requirements demand software solutions that are distributed across a network or Internet environment and have high levels of performance, availability, security, scalability, and serviceability.
Java ES provides infrastructure services needed to support such distributed enterprise applications, which generally have the following characteristics:
Distributed. The application consists of interacting software components deployed across a networked environment that might include geographically remote sites. These distributed components, running on the various computers in the environment, work together to deliver specific business functions to end users and to other business applications.
Enterprise-strength. The application’s scope and scale meet the needs of a production environment or Internet service provider. The application typically spans an entire enterprise, integrating many departments, operations, and processes into a single software system. The application must meet high quality of service requirements regarding performance, availability, security, scalability, and serviceability.
Distributed enterprise applications require underlying infrastructure services that allow their distributed components to communicate with each other, coordinate their work, implement secure access, and so forth. These infrastructure services are supported by a hardware environment of computers and network links. This hardware environment includes SPARC® and x86 (Intel and AMD) hardware architectures.
The overall layering scheme is shown in the following figure. For the most part, Java ES provides the distributed infrastructure services layer shown in the figure.
Among the featured services provided by Java ES are the following:
Portal services. These services enable employees, telecommuters, knowledge workers, business partners, suppliers, and customers to access corporate resources from inside or outside the corporate network. These services provide access capabilities to user communities anytime and anywhere, delivering personalized integration, aggregation, security, mobile access, and search.
Communication and collaboration services. These services enable the secure interchange of information among diverse user communities. Specific capabilities include messaging, real-time collaboration such as instant messaging and conferencing, and calendar scheduling in the context of the user's business environment.
This book refers to components from the Sun Java Communications Suite, which depend upon Java ES components and are used within Java ES deployment architectures. Communication and collaboration components are not included in Java ES.
Network identity and security services. These services improve security and protection of key corporate information assets by ensuring that appropriate access control policies are enforced across all communities, applications, and services on a global basis. These services work with a repository for storing and managing identity profiles, access privileges, and application and network resource information.
Web container and application services. These services enable distributed components to communicate with one another at runtime and support the development, deployment, and management of applications for a broad range of servers, clients, and devices. These services are based on J2EE technology.
Java ES also provides services that enhance availability, scalability, serviceability, and other application or system qualities. Among the quality of service features provided by Java ES are the following:
Availability services. These services provide near-continuous availability for application components and for the infrastructure components that support them.
Access services. These services provide Internet or browser-based access to Java ES services.
Monitoring services. These services provide real-time information about Java ES components.
You can deploy one or more Java ES services, each of which might include a number of Java ES components.