Sun Java System Application Server Platform Edition 9 Administration Guide

About the Java EE Containers

This section describes the Java EE containers included with the Application Server.

Types of Java EE Containers

Java EE containers provide runtime support for Java EE application components. Java EE application components use the protocols and methods of the container to access other application components and services provided by the server. The Application Server provides an application client container, an applet container, a Web container, and an EJB container. For a diagram that shows the containers, see the section Application Server Architecture.

The Web Container

The Web Container is a Java EE container that hosts web applications. The web container extends the web server functionality by providing developers the environment to run servlets and JavaServer Pages (JSP files).

The EJB Container

Enterprise beans (EJB components) are Java programming language server components that contain business logic. The EJB container provides local and remote access to enterprise beans.

There are three types of enterprise beans: session beans, entity beans, and message-driven beans. Session beans represent transient objects and processes and typically are used by a single client. Entity beans represent persistent data, typically maintained in a database. Message-driven beans are used to pass messages asynchronously to application modules and services.

The container is responsible for creating the enterprise bean, binding the enterprise bean to the naming service so other application components can access the enterprise bean, ensuring only authorized clients have access to the enterprise bean’s methods, saving the bean’s state to persistent storage, caching the state of the bean, and activating or passivating the bean when necessary.

Sun Java System Application Server 9 conforms to Java EE 5 and EJB 3.0 specifications Therefore a JNDI name will be no longer be required for EJB 3.0 session beans that expose a Remote view. If a deployed Remote EJB 3.0 bean does not provide a global JNDI name, the container will assign it one at runtime. The assigned JNDI name is the fully qualified class name of the remote EJB's business interface. In addition, EJB clients that use the new Remote EJB 3.0 client view will not be required to map their remote @EJB references to a global JNDI name within sun-ejb-jar.xml. If a JNDI name has not been associated with the ejb reference, the container will derive the default JNDI name for the target EJB from its associated business interface.

Applications using this EJB 3.0 feature will no longer need sun-ejb-jar.xml or sun-application-client.xml configuration files. The older method of providing a JNDI name in sun-ejb-jar.xml will continue to work. It will also be possible for the application to map an ejb-reference or @EJB reference to a specific global JNDI name.

See Also: