- Standalone Enterprise Applications
- Application Server-Based Enterprise Applications
- Application Server Architecture Provider Roles
- Application Server Components
- Application Server Client Interfaces
- Application Server Client Implementations
- Enterprise Application Configuration and Deployment
- Application Service Management
- Conclusions
Application Server Client Implementations
Application server clients may use the aforementioned interfaces to speak with enterprise application components operating inside an application server either in a standalone manner or inside its own container environment. Standalone clients provide their own runtime environment and communicate with the application server tier using a distributed communications paradigm such as CORBA or RMI. Standalone application clients are also responsible for ensuring that they have communications and service libraries installed on their machine that are compatible with the application server's communications and service libraries. Some application server environments also might provide a container environment in which their clients can operate, which helps guarantee that the client and server have compatible communications and service libraries and also provides a hook for more sophisticated client/server communications.
The same two general approaches apply to clients of J2EE EJBs. EJB clients operating in a standalone manner include regular Java-based clients, perhaps operating on top of a J2SE-based platform with the correct standard Java enterprise library extensions needed for communications with the EJB server. These libraries include the Java Naming and Directory Interface (JNDI), EJB client libraries, RMI/IIOP libraries, and possibly Java Message Service (JMS) and JDBC extension libraries. Standalone EJB clients also could be Web-tier Java servlets or JSPs, or perhaps CORBA clients talking with an EJB server that supports a pure EJB-CORBA mapping.
EJB clients can also operate inside a standard J2EE container environment. Such clients might be other EJBs, Java servlets, JSPs, or J2EE application clients. J2EE application clients might be viewed simply as J2SE-based Java applications along with support for a minimal set of container environment requirements. J2EE application clients essentially require a J2SE runtime environment complete with Java IDL and core JDBC, as well as the provisioning of the standard Java enterprise JNDI, EJB client, RMI/IIOP, JMS, and JDBC extension libraries. Additionally, J2EE application clients have a minimalist standard XML-based deployment descriptor for configuring their operating environment.