Component Tables Partitioning Component Tables

9-14 Oracle Fusion Middleware Administrators Guide for Oracle SOA Suite and Oracle BPM Suite 4. Review the logs and SQL files generated in the PART_DIR directory.

9.4.5 Verifying and Dropping Partitions

To verify and drop partitions: 1. Execute function verify_soa.verify_1.

2. Check the log file in the PART_DIR folder with the name SOA_PARTITION_

NAME _LOG_1 for any failures.

3. Drop the partitions that can be dropped by using the script generated in the

PART_DIR folder with the name SOA_PARTITION_NAME_RESULT_1.sql.

4. Execute verify_soa.verify_2.

5. Check the log file in the PART_DIR folder with the name SOA_PARTITION_

NAME _LOG_2 for any failures.

6. Drop the droppable partitions using the script generated in the PART_DIR folder

with the name SOA_PARTITION_NAME_RESULT_2.sql.

9.4.6 Partial Partitioning of Components

If you have an environment in which some components are partitioned, while other components are not partitioned, the nonpartitioned data set must be purged using the purge scripts described in Section 9.3, Deleting Large Numbers of Instances with the Purge Scripts. For example, assume human workflow is not partitioned, while other components are partitioned. The verification script reports that all SOA partitions can be dropped. However, the human workflow tables continue to hold workflow data until it is purged using the purge scripts. Note: Verification scripts are not provided for business rules. Note: There is an issue caused by the existence of foreign key constraints in the Oracle B2B table. When dropping the partition, the B2B partition purge is invoked, the foreign key constraints must be disabled before dropping the partition and enabled afterward. To perform this action, execute the PLSQL procedures b2b_disable_ constraints and b2b_enable_constraints at the appropriate steps in the above procedure. Because foreign keys are enabled and disabled in these procedures, it is not recommended to run them on a live system. 10 Programmatically Managing SOA Composite Applications 10-1 10 Programmatically Managing SOA Composite Applications This chapter provides an overview of the Facade API for programmatically managing SOA composite applications. This chapter includes the following topics: ■ Section 10.1, Introduction to Programmatically Managing SOA Composite Applications ■ Section 10.2, Facade API Interfaces ■ Section 10.3, Facade API Examples

10.1 Introduction to Programmatically Managing SOA Composite Applications

You can programmatically manage your SOA composite applications during runtime with the Facade API. The Facade API is part of Oracle SOA Suite’s Infrastructure Management Java API. The Facade API exposes operations and attributes of composites, components, services, references and so on. The Facade API provides an alternative to managing composites with Oracle Enterprise Manager Fusion Middleware Control. The oracle.soa.management.facade.Locator interface exposes a method interface as the top level entry point for most Facade APIs. The oracle.soa.management.facade.Locator interface exposes a method, createConnection, which returns a DirectConnection to a composite. You can use the LocatorFactory implementation to obtain the DirectConnection. For more information about the LocatorFactory and DirectConnection, see section Introduction to the Direct Binding Invocation API of Oracle Fusion Middleware Developers Guide for Oracle SOA Suite. The DirectConnection and DirectConnectionFactory for creating direct binding connections classes are in the oracle.soa.api.invocation package. Partition management APIs are not exposed by the Locator. Instead, the top level entry point for partition management APIs is the ServerManager. You use the ServerManagerFactory implementation shown in Example 10–1 to create ServerManager objects for managing the SOA server. Example 10–1 ServerManagerFactory ServerManagerFactory smf = ServerManagerFactory.getInstance; Hashtable jndiProps = new Hashtable; 10-2 Oracle Fusion Middleware Administrators Guide for Oracle SOA Suite and Oracle BPM Suite jndiProps.putContext.PROVIDER_URL, server_JNDI_provider_url; jndiProps.putContext.INITIAL_CONTEXT_FACTORY, server_initial_context_factory_ classname; jndiProps.putContext.SECURITY_PRINCIPAL, jndi_user; jndiProps.putContext.SECURITY_CREDENTIALS, jndi_password; ServerManager sm = smf.createInstancejndiProps; For more information about the Facade API, see Oracle Fusion Middleware Infrastructure Management Java API Reference for Oracle SOA Suite.

10.2 Facade API Interfaces

Table 10–1 provides an overview of the Facade API interfaces. Note: The Infrastructure Management Java API also includes the direct binding invocation API for inbound invocation of SOA composite applications and outbound invocations of Oracle Service Bus OSB or another SOA composite application. For information on using the direct binding invocation API, see Oracle Fusion Middleware Developers Guide for Oracle SOA Suite. Table 10–1 Facade API Interfaces Interface Description ActivityInstance Retrieves the instance ID key of the instance to which this activity belongs, the component name, the creation date of the activity, the expiration date of the current activity, and so on. AsynchronousJob Retrieves details about asynchronous job types. Note : This interface has been deprecated. AsynchronousResult Retrieves the results of asynchronous processes. Binding Retrieves binding details such as URI, type, and subtype. BindingComponent Retrieves the binding type and the list of faults specified by the given fault filter. BusinessEventInfo Retrieves business event details such as the consistency level, filter type, local name, namespace URI, and prefix. Component Retrieves component details such as distinguished name DN; active, faulted, and total instances; deployment time; and so on. ComponentInstance Retrieves component instance details such as the audit trail, component instance state for example, successfully completed, faulted, or running, conversation ID, creation date, and so on. Composite Retrieves composite details such as the distinguished name DN; active, faulted, and total instances; deployment time; and so on. CompositeInstance Retrieves the composite instance state for example, successfully completed, faulted, running, and so on. EventBridge Retrieves the event bridge type and the list of faults specified by the given fault filter. Fault Retrieves fault details such as the binding type if the fault occurred in a binding component, the component instance ID, the name of the component in which the fault occurred, the time at which the fault was generated, the service engine type if the fault occurred in a service engine, and so on. Programmatically Managing SOA Composite Applications 10-3

10.3 Facade API Examples

This section provides several examples of using the Facade API to perform composite management. FaultRecoveryActionTy peConstants Provides action types such as terminating instances, marking a faulted activity as complete, storing the rejected message in a file, marking a faulted activity to be recovered, retrying an activity, and so on. FaultRecoveryResult Retrieves faults, errors, recoverable faults, nonrecoverable faults, and so on. FaultRecoveryServiceE ngine Provides the fault recovery service engine. ImportInfo Retrieves the location of the imported resource and the import type. InterfaceType Retrieves the callback interface and interface properties. Locator Exposes a method interface as an entry point for Facade API clients. Message Retrieves message details such as the component name, composite DN, content of the message, conversation ID, message storage location, message recoverable state, and so on. Partition Performs partitioning lifecycle management tasks such as starting, stopping, activating, and retiring all the composites in a partition. Property Retrieves property details such as the default value, name, override attribute value of the property, property value source, and so on. Reference Retrieves reference details such as the WSDL URL for the target service, properties for the reference, reference name, reference bindings, and so on. ReferenceInstance Retrieves the type of the binding. DN of the composite, composite instance ID, time of instance creation, and so on. ServerManager Gets and creates partitions. Service Retrieves service details such as bindings, composite DN, interface type, name, multiplicity, and so on. ServiceEngine Retrieves the list of deployed components in the service engine, engine type, and list of faults specified by the given fault filter. ServiceInstance Retrieves service instance details such as the type of the binding. DN of the composite, composite instance ID, time of creation, and so on. WebServiceBinding Retrieves the default address URI, endpoint address URI, port, transport type, and so on. WebServiceBindingPort Retrieves the port name, port URI, service name, and so on. WireInfo Retrieves the wire reference, wire service, source URI, and target URI. WSDLInterfaceBinding Retrieves the WSDL URL. Table 10–1 Cont. Facade API Interfaces Interface Description