Adapter for Enterprise JavaBeans 6.5 SP3 | webMethods Adapter for Enterprise JavaBeans Documentation | webMethods Adapter for Enterprise JavaBeans Installation and User’s Documentation | Overview of webMethods Adapter for Enterprise JavaBeans | Architecture and Components
 
Architecture and Components
Adapter for Enterprise Javabeans provides a set of user interfaces, built-in services, and templates that enable you to create integrations with EJBs on an application server. The adapter is provided as a single package that must be installed on Integration Server. For detailed installation instructions and software requirements, see Installing, Upgrading, and Uninstalling.
Adapter for Enterprise Javabeans exposes Enterprise JavaBeans to Integration Server by providing adapter connection templates and adapter service templates to obtain a reference to one or more bean instances, and to invoke a method on each instance (through the remote interface). Each of the service template classes can only operate against a single EJB.
The following diagram shows at a high level how the adapter components connect to an application server:
*Integration Server. Adapter for Enterprise Javabeans is installed and runs on Integration Server.
*WmART Package. The WmART package provides a common framework for webMethods 6 and later adapters to use Integration Server's functionality, making Integration Server the run-time environment for Adapter for Enterprise Javabeans. The WmART package is installed with Integration Server and provides logging, transaction management, and error handling for the adapter and its connections and services.
*Adapter for Enterprise Javabeans. Adapter for Enterprise Javabeans is delivered as a single package called WmEJBAdapter. The adapter provides Integration Server Administrator user interfaces that enable you to configure and manage adapter connections, and Software AG Designer user interfaces that enable you to configure and manage adapter services. Adapter for Enterprise Javabeans installation includes templates from which all Adapter for Enterprise Javabeans connections and services can be created.
*Adapter Connection Templates. An adapter connection enables Integration Server to connect to application servers at run time. You must configure an adapter connection before you can create adapter services. Adapter for Enterprise Javabeans provides templates for adapter connections in Integration Server Administrator. For a detailed description of adapter connections and usage information, see Adapter Connections.
*Adapter Service Templates.An adapter service enables Integration Server to create and invoke a method on an EJB instance deployed on an application server. For example, an adapter service could enable Integration Server clients to write salary information to an employee database connected to an application server. Adapter for Enterprise Javabeans provides adapter service templates in Designer. For more information about adapter service templates and how the services interact, see Adapter Services.
*Application Server. Adapter for Enterprise Javabeans connections and services interact with EJBs on an application server. The application server provides support for persistence, transactions, and remote access, among other things. Within the application server, the EJB container is the component responsible for managing the EJBs deployed on that system. Individual beans provide application-specific functionality. Through support of the EJB standards, the application server allows external applications to create and remove bean instances, and invokes methods defined by those beans.
The application server also implements access to deployed beans through the home interface (only for 2.1 EJBs) and remote bean interfaces, which the bean developer defines. The home interface for 2.1 EJBs defines methods to gain access to individual instances for an EJB class, either looking up one or more instances or creating a new instance. The remote interface defines methods that may be invoked on one of those instances.
The application server also implements access to deployed beans through the remote interface for 3.0 EJBs which the bean developer defines. The remote interface for 3.0 EJBs defines methods to gain access to individual instances for an EJB class, either looking up one or more instances or creating a new instance. The remote interface defines methods that may be invoked on one of those instances.
*JNDI. Adapter for Enterprise Javabeans uses the Java Naming and Directory Interface (JNDI) to perform lookup operations that identify EJBs whose methods you want to invoke. Lookup operations get this information from the application server's JNDI implementation. After identifying the EJB whose public methods you want to invoke, the adapter gets public interface details about the EJB. Public interface details include whether the EJB is a session or entity bean, details about how to create an instance of the EJB, and what business methods it exposes. The adapter then enables you to configure service instances that execute the public EJB methods on the application server.
Services created with Adapter for Enterprise Javabeans are actually remote EJB client applications that interact with the deployed EJB through stub interfaces. These are lightweight, external, and distributable representations of the actual EJB. A remote client never interacts directly with the EJB itself.
The basic data flow for any client-initiated 2.1 EJB interaction is as follows:
Step
Action
1
The client accesses the JNDI server to look up the EJB home interface of an EJB deployed on the application server.
2
The client invokes a "creator/finder" method on the home interface, creating an EJB instance with which Adapter for Enterprise Javabeans can interact. The home interface returns a remote EJB interface to the client.
3
The client then invokes the desired public method on the remote EJB.
The basic data flow for any client-initiated 3.0 EJB interaction is as follows:
Step
Action
1
The client accesses the JNDI server to look up the EJBObject interface of an EJB deployed on the application server.
2
The client fetches a remote instance of a 3.0 EJB associated with the given JNDI Name with which Adapter for Enterprise Javabeans can interact. Adapter for Enterprise Javabeans returns a remote EJB interface to the client.
3
The client then invokes the desired public method on the remote EJB.
The following diagram illustrates the use of Adapter for Enterprise Javabeans and Integration Server in a typical business-process integration.