Enabling High Availability for Oracle File and FTP Adapters

6-20 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle ECM Suite 6. In the Default Store section of the page, enter the path to the folder where the default persistent stores will store its data files. The directory structure of the path is as follows: ORACLE_BASE admindomain_namesoa_cluster_nametlogs 7. Save and activate the changes. 8. Restart the WLS_SOA1 and WLS_SOA2 managed servers.

6.17 Enabling High Availability for Oracle File and FTP Adapters

The Oracle File and FTP Adapters enable a BPEL process or an Oracle Mediator to read and write files on local file systems and on remote file systems through FTP File Transfer Protocol.These adapters support high availability for an active-active topology with Oracle BPEL Process Manager and Oracle Mediator service engines for both inbound and outbound operations. To make Oracle File and FTP Adapters highly available for outbound operations, use the database mutex locking operation as described in High Availability in Outbound Operations in Oracle Fusion Middleware Users Guide for Technology Adapters. The database mutex locking operation enables these adapters to ensure that multiple references do not overwrite one another if they write to the same directory. Using the Database Mutex Locking Operation To make an outbound Oracle File or FTP Adapter service highly available using database table as a coordinator, you must modify the Oracle File Adapter deployment descriptor for the connection-instance corresponding to eisHAFileAdapter in the Oracle WebLogic Server console: 1. Log in to the Oracle WebLogic Server console. To access the console, navigate to http:server_name:port_numberconsole.

2. Click Deployments in the left pane for Domain Structure.

Note: To enable migration of the Transaction Recovery Service, specify a location on a persistent storage solution that is available to other servers in the cluster. Both WLS_SOA1 and WLS_SOA2 must be able to access this directory. Note: this step is optional and applies only to those deployments that require adapter support for the BPEL processes that are invoked by IPM. Note: The File Adapter picks up a file from the inbound directory, processes it, and then outputs a file to the output directory. Because the File Adapter is non-transactional, files can be processed twice. As a result, it is possible to get duplicate files when there is failover in the Oracle RAC back-end or in the SOA-managed servers. Note: You must increase global transaction timeouts if you use database as a coordinator. Extending the Domain with SOA Components 6-21

3. Click FileAdapter under Summary of Deployments on the right pane.

4. Open the Configuration tab. 5. Open the Outbound Connection Pools tab, and expand javax.resource.cci.ConnectionFactory to see the configured connection factories.

6. Click eisHAFileAdapter. The Outbound Connection Properties screen for the

connection factory corresponding to high availability opens. The connection factory properties are displayed as shown in Figure 6–4 . Figure 6–4 Oracle WebLogic Server Console - Settings for javax.resource.cci.Connectionfactory Page

7. Click Lock Edit. After this, the property value column becomes editable you

can click on any of the rows under Property Value and modify its value. The new parameters in connection factory for Oracle File and FTP Adapters are as follows: ■ controlDir: Set it to the directory structure where you want the control files to be stored. You must set it to a shared location if multiple WebLogic Server instances run in a cluster. Structure the directory for shared storage as follows: ORACLE_BASE admindomain_namecluster_namefadapter ■ inboundDataSource: Set the value to jdbcSOADataSource. This is the data source where the schemas corresponding to high availability are pre-created. The pre-created schemas can be found under ORACLE_HOMErcu integrationsoainfrasqladaptercreateschema_adapter_oracle.sql. If you want to create the schemas elsewhere, use this script. You must set the inboundDataSource property accordingly if you choose a different schema. ■ outboundDataSource: Set the value to jdbcSOADataSource. This is the data source where the schemas corresponding to high availability are pre-created. The pre-created schemas can be found under ORACLE_HOMErcu 6-22 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle ECM Suite integrationsoainfrasqladaptercreateschema_adapter_oracle.sql. If you want to create the schemas elsewhere, use this script. You must set the outboundDataSource property if you choose to do so. ■ outboundLockTypeForWrite: Set the value to oracle if you are using Oracle Database. By default, the Oracle File and FTP Adapters use an in-memory mutex to lock outbound write operations. You must choose from the following values for synchronizing write operations: – memory: The Oracle File and FTP Adapters use an in-memory mutex to synchronize access to the file system. – oracle: The adapter uses Oracle Database sequence. – db: The adapter uses a pre-created database table FILEADAPTER_ MUTEX as the locking mechanism. You must use this option only if you are using a schema other than the Oracle Database schema. – user-defined: The adapter uses a user-defined mutex. To configure the user-defined mutex, you must implement the mutex interface oracle.tip.adapter.file.Mutex and then configure a new binding-property with the name oracle.tip.adapter.file.mutex and value as the fully qualified class name for the mutex for the outbound reference.

8. Click Save after you update the properties. The Save Deployment Plan page

opens. 9. Enter a shared storage location for the deployment plan. The directory structure is as follows: ORACLE_BASE admindomain_namecluster_namedpPlan.xml

10. Click Save and Activate.

11. Configure BPEL Process or Mediator Scenario to use the connection factory as shown in the following example: adapter-config name=FlatStructureOut adapter=File Adapter xmlns=http: platform.integration.oracleblocksadapterfwmetadata connection-factory location=eisHAFileAdapter adapterRef= endpoint-interaction portType=Write_ptt operation=Write interaction-spec className=oracle.tip.adapter.file.outbound.FileInteractionSpec property.. property.. interaction-spec endpoint-interaction adapter-config Note: The parameters available for FTP Adapters are slightly different than for the connection factory, but from a high-availability standpoint, just setting the control directory to a shared storage location is what matters. Note: The location attribute is set to eisHAFileAdapter for the connection factory. Extending the Domain with SOA Components 6-23

6.18 Scaling the Oracle Database Adapter