bea.com | products | dev2dev | support | askBEA

Download Docs | Site Map | Glossary
Search

Using Application Integration

Modular Deployment of Application Integration

This section presents the following topics:

- Overview

- Deployment Components

- Deployment Configuration for Domains Outside the WebLogic Integration Environment

- JMS Resources

Overview

In pre-7.0 WebLogic Integration environments, Application Views are usually created and managed through a business process management (BPM) workflow. In a Release 7.0 environment, however, Web service developers using WebLogic Workshop need to use Application Views to access enterprise information systems. The application integration functionality of WebLogic Integration is packaged in an enterprise application archive (EAR file) and is available to any valid WebLogic domain. The following sections describe changes in the deployment process required for modular deployment. For detailed information about deployment concepts and tasks, see Deploying BEA WebLogic Integration Solutions.

Classpath Changes and Server Restart

You must add the wlai-core.jar file to the classpath for domains that are not based on WebLogic Integration. To implement the change in the classpath, you must then restart the server.

Repository

The application integration engine uses the repository for metadata persistence. The application integration engine relies on a preconfigured repository and associated JDBC connection pool and data source. For modular deployment, you must provide the JDBC data source name and credentials at the time of deployment. The application integration engine assumes that the repository has already been installed in the data source.

JMS Resources

Application views use JMS resources to handle events and asynchronous service invocations. To support these functions, Application Views use the following resources: JMSConnectionFactory, JMSTemplate, JMSJDBCStore, and JMSServer. In addition, the application integration engine defines a request and response queue for handling asynchronous service invocations. There are two modes of operation supported for determining which JMS resources to use.

- You provide the name of existing JMS resources for any or all of the following resources:

- JMSConnectionFactory

- JMSServer

Note: If you provide the name for the JMSServer, you must also configure the JMSJDBCStore.

- You do not provide the name of existing JMS resources. In this case, the startup process uses JMS MBeans to define the necessary JMS resources. The full list of JMS Resources used by the application integration engine is described in JMS Resources.

Configuration

The application integration startup and shutdown classes are replaced by an Enterprise JavaBean (EJB) named StartupBean. The EJB is deployed from wlai-server-ejb.jar and is loaded on startup. On startup, the EJB initiates the initialization sequence for the application integration engine. The initial parameters to the StartupBean EJB serve as the configuration parameters for the application integration engine. You can set these parameters using the standard EJB Descriptor editing tool provided in the WebLogic Administration Console. The following table lists the configuration parameters.

Property Name | Default Value | Description
wlai.logLevel | warning | Verbosity level for application integration logging.
wlai.deploymentRepositoryRootPath | $PWD/wlai/deploy; where $PWD is the present working directory for WebLogic Server | The location where the application integration engine saves connection factory deployment descriptors
wlai.hostUserID | system | A user identifier. Application integration allows a remote event router (deployed from a Web application) to authenticate itself to the WebLogic Server so that it can post events.
wlai.hostPassword | security | The password for a user. Application integration allows a remote event router (deployed from a Web application) to authenticate itself to the WebLogic Server so that it can post events.
wlai.jms.autogen | true | Flag that allows the application integration startup process to autogenerate JMS resources.
wlai.jms.serverName | WLIJMSServer | Name of the JMSServer on the local WebLogic Server.
wlai.jms.connectionFactoryJNDIName | com.bea.wlai.JMSConnectionFactory | JMS Connection Factory JNDI context.
wlai.repositoryDatasourceName | WLAI_DataSource | JDBC data source name.

In the Application View Console, click on Server Configuration to view the configuration parameters for the application integration engine. You can edit the wlai.logLevel property on the Server Configuration page. All other parameters must be edited using the WebLogic Administration Console.

Start and stop the application integration engine from the WebLogic Administration Console by deploying and undeploying the WebLogic Integration application that contains the application integration component.

Import/Export Utility

In previous releases, application integration data was migrated using the workflow package import/export utility accessible from the WebLogic Integration Studio. To support modular deployment, application integration provides a command-line import/export tool for Application Views. For more information, see Importing and Exporting Application Views.

Deployment Components

The following list describes the deployment components for application integration.

- wlai-core.jar

This jar file must be added to the WebLogic server classpath at startup. It contains the following components:

>     wlai-core.jar
>     |__log4j.jar contents
>     |__logtoolkit.jar contents
>     |__xmltoolkit.jar contents
>     |__bea.jar contents
>     |__com/bea/wlai/*.dtd
>     |__com/bea/wlai/common/*.class
>     |__com/bea/wlai/message/*.class
>     |__xcci.jar contents

This jar file is also required for all clients of application integration.

- wlai-client.jar

This jar file contains all classes needed by clients of the application integration engine, such as Application View clients and resource adapter design time Web applications.

- wlai-server.jar

This jar file contains all classes needed only by server-side components and should not be included in any adapter EAR files or clients.

- wlai-mbean.jar

This jar file contains the Application View MBeans and must be included on the system classpath for WebLogic Server.

- wlai-server-ejb.jar

This jar file contains the base server classes and the management EJBs. This jar file must be deployed before all other components of the AI engine. This jar file contains the Startup EJB which initializes application integration.

- wlai.war

This war file contains the Application View Console Web Application and the LifeCycleServlet for the application integration engine.

- wlai-eventprocessor-ejb.jar

This jar file contains the event processing message driven EJB for handling application integration events.

- wlai-asyncprocessor-ejb.jar

This jar file contains the asynchronous service processing message driven EJB for handling asynchronous service invocations.

- wlai-plugin-ejb.jar

This jar file contains all classes for the Application Integration Plug-in for BPM.

- wlai-plugin.war

This war file contains the online help Web application for the Application Integration Plug-in for BPM.

Deployment Configuration for Domains Outside the WebLogic Integration Environment

To deploy an application integration enterprise application outside a WebLogic Integration domain, use wlai.ear. The EAR file contains the components shown in the following diagram:

>     wlai.ear
>     |__META-INF
>     |    |__application.xml (EAR file deployment descriptor)
>     |__wlai.war (Application View Console Web application)
>     |    |__WEB-INF
>     |        |__lib
>     |            |__webtoolkit.jar
>     |__wlai-server-ejb.jar (Application Integration Management EJBs)
>     |    |__Startup EJB
>     |    |__ApplicationView EJB
>     |    |__SchemaManager EJB
>     |    |__DeployManager EJB
>     |    |__ApplicationViewManager EJB
>     |    |__NamespaceManager EJB
>     |__wlai-eventprocessor-ejb.jar
>     |__wlai-asyncprocessor-ejb.jar
>     |__ecibase.jar (ECI repository base classes)
>     |__ecirepository.jar (ECI repository classes)

You must add wlai-core.jar, wlai-server.jar, and wlai-mbean.jar to the system classpath and restart WebLogic Server. You must also copy the wlai-mbean.jar file to your WL_HOME\lib\mbeantypes directory where WL_HOME is your Web Logic Server installation.

Once the wlai-core.jar has been added to the classpath, add the following Application component to the config.xml file for the domain, or upload it from the WebLogic Server Administration Console:

>     <Application Deployed="true" Name="WebLogic Application Integration"
>     Path="PATH_TO_EAR/wlai.ear">

>     <EJBComponent Name="WLI-AI Server" Targets="myserver"
>     URI="wlai-server-ejb.jar"/>

>     <WebAppComponent Name="wlai"
>     Targets="myserver" URI="wlai.war"/>

>     <EJBComponent Name="WLI-AI Async Processor" Targets="myserver"
>     URI="wlai-asyncprocessor-ejb.jar"/>

>     <EJBComponent Name="WLI-AI Event Processor" Targets="myserver"
>     URI="wlai-eventprocessor-ejb.jar"/>

>     </Application>

Note: The deployment order is specified in the application.xml file for the wlai.ear.

Note: The Application Integration Plug-In for BPM is not deployed from the wlai.ear file for domains outside the WebLogic Integration environment.

JMS Resources

The application integration engine uses the following JMS resources:

- JMSServer

- JMSConnectionFactory

If the JMSConnectionFactory supplied by the user is not bound to JNDI location com.bea.wlai.JMSConnectionFactory, the factory is cloned and bound to com.bea.wlai.JMSConnectionFactory. As a result, internal application integration components are guaranteed access to a JMSConnectionFactory.

- Queues:

- WLAI_EVENT_QUEUE—Must be bound at com.bea.wlai.EVENT_QUEUE.

- WLAI_ASYNC_REQUEST_QUEUE—Must be bound at com.bea.wlai.ASYNC_REQUEST_QUEUE.

- WLAI_ASYNC_RESPONSE_QUEUE—Must be bound at com.bea.wlai. ASYNC_RESPONSE_QUEUE.

- Topics:

- WLAI_EVENT_TOPIC—Must be bound at com.bea.wlai.EVENT_TOPIC.

JMS Resource Configuration

The application integration engine automatically defines all required JMS resources if you do not define them explicitly for a standalone server and for a cluster. The system administrator can specify the following configuration parameters:

>     wlai.jms.serverName
>     wlai.jms.connectionFactoryJNDIName

In addition, the administrator has the option of disabling all autogeneration of JMS resources, by specifying the following configuration parameter:

>     wlai.jms.autogen=false

This parameter prevents the application integration engine from attempting to autogenerate any required JMS resources. If you specify it, you must define any required JMS resources manually.