Oracle® Application Integration Architecture Pre-Built Integrations 11.1: Utilities Guide Release 11.1 Part Number E24458-04 |
|
|
PDF · Mobi · ePub |
This chapter introduces AIACompositeScheduler and includes the following sections:
AIACompositeScheduler is a utility component that is used by integrations to schedule a Service-Oriented Architecture (SOA) composite to be invoked at the specified time interval. For example, it can schedule a SOA composite to be invoked every 30 seconds. It supports scheduling composites in cluster environment as well.
AIACompositeScheduler is implemented as a J2EE application. It uses Weblogic Timer and Job Scheduler Application Programming Interfaces (API). These APIs are used to schedule a job to run at a specific time interval. When a job is run, it invokes SOA composite using composite's direct binding.
Currently, CRM On Demand - JD Edwards EnterpriseOne and CRM On Demand - Oracle E-Business Suite integrations use this utility component to invoke the CRMOnDemandActivationAgent composite every 30 seconds.
For CRM On Demand - JD Edwards EnterpriseOne and CRM On Demand - Oracle E-Business Suite integrations, the deployment of this utility on the server is done automatically when the supplementary deployment plan of the integration is run. The supplementary deployment plan is run automatically when the integration deployment plan is run. When AIACompositeScheduler is deployed, it invokes CRMOnDemandActivationAgent every 30 seconds.
Similar to the deployment on the Weblogic server, deployment of AIACompositeScheduler on the Weblogic cluster is done automatically by running the integration deployment plan. However, in the Weblogic cluster, the following additional configurations are required for scheduler to work properly:
Weblogic job scheduler table and data source
During installation, these are created if the Create default Job Scheduler table and data source if one does not exist option is selected when the configuration wizard is run. This option is selected by default and it creates a default table and data source, if these are not created. The default table is created in the AIA database with the name weblogic_timers and the name of the data source is JobSchedulerDataSource.
Table and data source are used in the cluster environment to persist scheduled jobs in the database. It supports load balancing and failures in the cluster environment. When a server fails or must load balance, another server can pick up the job. In a non-cluster environment, this is not needed because scheduled jobs are in memory.
Leasing
Leasing must be enabled for Job Schedulers. You can use either high-availability database leasing or non-database consensus leasing.
AIACompositeScheduler uses the Weblogic Job Scheduler to schedule jobs in the cluster environment. It is a requirement from the Weblogic Job Scheduler for the required configurations to be in place.
For more information about Job Scheduler table, Data source, and Leasing, see Timer and Work Manager API (Common) Programmer's Guide, "Using the Job Scheduler."
For CRM On Demand - JD Edwards EnterpriseOne and CRM On Demand - Oracle E-Business Suite integrations, all configurations are automatically done to invoke CRMODActivationAgent every 30 seconds.
If you want to modify the preconfigured settings or to schedule more composites, perform the steps mentioned in Section 2.3.1, "Creating Direct Binding" and Section 2.4, "Modifying AIACompositeScheduler Properties".
AIACompositeScheduler uses direct binding to invoke a composite. Composites that must be scheduled by AIACompositeScheduler must have a direct binding service exposed.
To create a direct binding:
In Jdeveloper, select composite.
On the component palette, select Direct Binding Service.
Add Direct Binding Service to the exposed services side of the composite.
Provide the Web Service Definition Language (WSDL) for the direct binding. You can use WSDL of other exposed services.
Add a wire to the component.
In the source view of the composite, see if this service uses the direct binding.
Deploy the composite on the SOA server to be invoked or scheduled by AIACompositeScheduler.
Properties of AIACompositeScheduler are specified in web.xml. Administrators can change these properties dynamically through a weblogic deployment plan. For example, administrator can change the time interval to invoke the composite from 30 seconds to one minute.
For CRM On Demand - JD Edwards EnterpriseOne and CRM On Demand - Oracle E-Business Suite integrations, these properties are preconfigured to invoke CRMOnDemandActivationAgent every 30 seconds. Administrator can change the preconfigured properties, if required, by completing the steps mentioned in this section.
Table 2-1 lists the properties required by the AIACompositeScheduler:
Table 2-1 Properties for AIACompositeScheduler
Property Name | Description |
---|---|
timeInterval |
Scheduling time in seconds For example, If it is set to 30 seconds, composite is invoked every 30 seconds. For CRM OD - JD Edwards EnterpriseOne and CRM OD - Oracle E-Business Suite integrations, this property is preconfigured to 30 seconds. |
compositeName |
Name of the composite to be invoked For CRM OD - JD Edwards EnterpriseOne and CRM OD - Oracle E-Business Suite integrations, this property is preconfigured as CRMOnDemandActivationAgent. |
compositeDomain |
SOA domain on which the composite to be invoked is deployed For CRM OD - JD Edwards EnterpriseOne and CRM OD - Oracle E-Business Suite integrations, this property is preconfigured as default. |
compositeVersion |
Version of the composite to be invoked For CRM OD - JD Edwards EnterpriseOne and CRM OD - Oracle E-Business Suite integrations, this property is preconfigured as 1.0. |
compositeDirectBindingName |
Direct binding name of the composite For CRM OD - JD Edwards EnterpriseOne and CRM OD - Oracle E-Business Suite integrations, this property is preconfigured as client. |
bpelOperationName |
Name of the operation that must be invoked For CRM OD - JD Edwards EnterpriseOne and CRM OD - Oracle E-Business Suite integrations, this property is preconfigured as process. |
bpelOperationPartName |
Operation part name For CRM OD - JD Edwards EnterpriseOne and CRM OD - Oracle E-Business Suite integrations, this property is preconfigured as command. |
bpelOperationMessageValue |
XML input for the operation For CRM OD - JD Edwards EnterpriseOne and CRM OD - Oracle E-Business Suite integrations, the following script is preconfigured:
|
bpelOperationType |
Operation type This can be either one-wayrequest-responseone-way or . The option signifies one-way operation and the request-response option signifies request response operation. For CRM OD - JD Edwards EnterpriseOne and CRM OD - Oracle E-Business Suite integrations, this property is preconfigured as request-response. |
AIACompositeScheduler can invoke multiple composites. To specify multiple composites, first composite is named as compositeName and subsequent ones as compositeName1, compositeName2, and so on. You might have to append the suffix 1, 2, and so on for all properties except timeInterval. Therefore, it is compositeName1, compositeDomain1, compositeVersion1, compositeDirectBindingName1, bpelOperationName1, bpelOperationPartName1, bpelOperationMessageValue1, and bpelOperationType1.
In the cluster environment, timeInterval property less than 30 seconds is not valid, because minimum time for recurring implementation of a timer is 30 seconds.
You can view the properties in a web browser by completing the following steps:
Log in to Oracle Enterprise Manager Fusion Middleware Control.
Expand Application Deployments.
Click AIACompositeScheduler.
Under the Web Modules, find the Test point URL.
Append compositeScheduler to the URL.
View the properties.
After AIACompositeScheduler is deployed, you can specify the properties of the composite to be invoked through a deployment plan.
Complete these steps to modify the properties:
Log in to Weblogic Console.
Open your_domain and select deployments.
Select AIACompositeScheduler.
In the Overview tab, find the path for the deployment plan.
On the file system, navigate to the path for the deployment plan found in the Overview tab.
Search for the deployment plan.
Open the deployment plan to modify.
Search for the property under variable-definition that must be modified.
Modify the value.
Return to Weblogic Console.
Select AIACompositeScheduler.
Redeploy AIACompositeScheduler with the updated deployment plan.
This section includes the following topics:
Section 2.5.1, "Starting and Stopping AIACompositeScheduler on Weblogic Server"
Section 2.5.2, "Starting and Stopping AIACompositeScheduler on Cluster Server"
This section includes the following topics:
Section 2.5.1.2, "To Stop AIACompositeScheduler from Weblogic Server"
Section 2.5.1.4, "To Restart AIACompositeScheduler from Weblogic"r
Section 2.5.1.5, "To Restart AIACompositeScheduler from Weblogic Server"
After AIACompositeScheduler is deployed, it automatically starts invoking composites for the time interval specified.
If you stop composites, these are no longer invoked. Complete the following steps to stop it:
Log in to Weblogic Console.
Open your_domain.
Select deployments.
Search for and select AIACompositeScheduler.
Select Stop.
Log in to Oracle Enterprise Manager Fusion Middleware Control.
Open Application Deployments.
Select AIACompositeScheduler.
Right click and select Control, Shutdown.
After stopping the AIACompositeScheduler, you can restart it again to invoke composites. Complete the following steps to restart it:
Log in to Weblogic Console.
Open your_domain.
Select deployments.
Search for AIACompositeScheduler and select it.
Select Start.
Log in to Oracle Enterprise Manager Fusion Middleware Control.
Open Application Deployments.
Select AIACompositeScheduler.
Right click and select Control, Start up.
In a cluster environment to stop a composite from being invoked, you must cancel the AIACompositeScheduler job. This job has the description - AIACompositeSchedulerTimerListener.
Complete the following steps to cancel this job:
Log in to Weblogic Console.
Select Environment, Servers.
Select the server on which the jobs you want to cancel are scheduled.
Select Control, Jobs.
The list of scheduled jobs for that server appears.
Select the AIACompositeSchedulerTimerListener job option.
Click Cancel.