Oracle® Fusion Applications Extensibility Guide 11g Release 1 (11.1.4) Part Number E16691-06 |
|
|
PDF · Mobi · ePub |
This chapter describes how to customize (edit) service-oriented architecture (SOA) components during runtime in a deployed composite with a runtime tool such as Oracle BPM Worklist, Oracle SOA Composer, or Oracle Enterprise Manager Fusion Applications Control or customize and extend (create) SOA components during design time in Oracle JDeveloper. It also provides recommendations for merging runtime customizations from a previously deployed revision into a new revision and instructions for synchronizing customized flexfields in Oracle Metadata Services (MDS) Repository.
This chapter includes the following sections:
Section 12.1, "About Customizing and Extending SOA Components"
Section 12.4, "Extending or Customizing Custom SOA Composites"
Section 12.5, "Deploying SOA Composite Customizations and Extensions"
For information about troubleshooting SOA issues, see the "Troubleshooting Oracle SOA Suite" chapter of the Oracle Fusion Applications Administrator's Troubleshooting Guide.
Notes:
This chapter does not describe customizing and extending Oracle BPM Suite. Oracle BPM Suite is installed on top of Oracle SOA Suite, and provides the ability to run Business Process Management Notation (BPMN) processes. To accomplish this task, there are extensions to JDeveloper for working with BPMN (Oracle BPM Studio) and a web-based application for working with BPMN processes (Oracle Business Process Composer). For information about BPMN process flows, see Chapter 7, "Customizing and Extending BPMN Processes ." For information about Oracle BPM project templates, see Chapter 13, "Customizing and Extending Oracle BPM Project Templates."
Oracle SOA Suite extensions cannot be used with Integrated WebLogic Server (Integrated WLS). If an application has references to Oracle SOA Suite shared libraries, then customizations on the application cannot be tested with Integrated WLS.
SOA provides an enterprise architecture that supports building connected enterprise applications to provide solutions to business problems. SOA enables you to develop enterprise applications as modular business web services that can be integrated and reused, resulting in a flexible, adaptable IT infrastructure. SOA separates business functions into distinct units, or services.
Oracle SOA Suite provides a complete set of service infrastructure components for designing, deploying, and managing composites. A composite is an assembly of services, service components, and references designed and deployed in a single application. Wiring between the services, service components, and references enables message communication.
Oracle SOA Suite consists of SOA components that comprise the business logic and processing rules in a SOA composite. You can include components such as the following in a SOA composite:
Business rules:
The following categories of rules are available:
Approval configuration (expirations, escalations, and notifications) and assignment rules:
Define complex task routing slips for approval management by taking into account business documents and associated rules to identify the approval hierarchy for a work item. Additionally, approval management lets you define multistage approvals with associated list builders based on supervisor or position hierarchies. You can also define expiration, escalation, and notification configurations. For example, an expense approval task may use rules to define its approvers.
Approval configuration and assignment rules are within the context of a human workflow.
Nonapproval business rules:
Define a business decision based on rules that enables dynamic decisions to be made at runtime that automate policies, computations, and reasoning while separating rule logic from underlying application code. For example, you can define a business rule to select a supplier with the lowest shipping price to fulfill a shipping order.
Nonapproval business rules are in the context of Oracle SOA Suite, but outside of human workflow.
Rules in non-Oracle SOA Suite applications
Use of standalone rules in non-Oracle SOA Suite applications is supported. You can completely control how the rule dictionaries are structured and how these applications are patched. You may structure the rules as recommended for Oracle SOA Suite rules, as described in this chapter.
Domain value maps:
Operate on actual data values that move through the infrastructure at runtime. Domain value maps enable you to map from one vocabulary used in a given domain to another vocabulary used in a different domain. For example, one domain can represent a city with a long name (Boston), while another domain can represent a city with a short name (BO). In such cases, you can directly map the values by using domain value maps.
Human tasks:
Extend a workflow that describes the tasks for users or groups to perform as part of an end-to-end business process flow. For example, a vacation request workflow is assigned to a manager. The manager must act on the request task three days before the vacation starts. If the manager formally approves or rejects the request, the employee is notified with the decision. If the manager does not act on the task, the request is treated as rejected. Notification actions similar to the formal rejection are taken.
Business Process Execution Language (BPEL) processes:
Integrate a series of business activities and services into an end-to-end process flow. For example, a BPEL process flow calls a credit rating service. When you run this process, you enter a social security number into a user interface. The credit rating service takes the number and returns a credit rating.
Oracle Mediators:
Define services that perform message and event routing, filtering, and transformations. For example, Oracle Mediator can accept data contained in a text file from an application or service, transform it into a format appropriate for updating a database that serves as a customer repository, and then route and deliver the data to that database.
For more information about these components, see Oracle Fusion Middleware Developer's Guide for Oracle SOA Suite.
Oracle SOA Suite supports the following types of customizations and extensions of these components:
Customizing several components during runtime
Customizing and extending several components during design time
The tool to use depends on the component you are customizing or extending and whether you are performing these tasks during runtime or design time. Table 12-1 provides details.
Note:
If you are customizing approval configuration and assignment rules or nonapproval business rules for a deployed project (either for Oracle SOA Suite or Oracle BPM Suite), always use Oracle BPM Worklist or Oracle SOA Composer. If you are customizing approval configuration and assignment rules or nonapproval business rules as part of a new Oracle BPM Suite project being extended in Oracle Business Process Composer, then use Oracle Business Process Composer. For information about using Oracle Business Process Composer, see Chapter 13, "Customizing and Extending Oracle BPM Project Templates."
Table 12-1 Customization and Extension Tools for Oracle SOA Suite
To Perform These Tasks... | Use This Tool... | Use This Tool At... | Tool User |
---|---|---|---|
Customize business rules:
|
Note: If you use Oracle SOA Composer to customize approval configuration and assignment rules during runtime, changes in subsequent revision patches are not applied successfully. |
Runtime in a deployed composite Runtime in a deployed composite |
Technical analyst Business analyst |
Customize domain value maps |
Oracle SOA Composer |
Runtime in a deployed composite |
Business analyst |
Customize composite endpoint properties such as the following:
|
Oracle Enterprise Manager Fusion Applications Control |
Runtime in a deployed composite |
System administrator |
|
JDeveloper (when logged in with the Customization Developer role) |
Design time (when complete, you must deploy the composite) |
System integrator |
Notes:
You cannot customize human tasks, BPEL processes, and Oracle Mediators during runtime in a deployed composite.
When using Oracle SOA Composer, you can save your customizations in a sandbox environment without applying them to a running instance and later return to the sandbox to make additional customizations. These customizations are only applied to the running instance when you click Commit.
Before you customize SOA components, become familiar with the Oracle Fusion application architecture that enables customizations, as described in Chapter 1, "Customizing and Extending Oracle Fusion Applications." Also understand the typical workflows for working with runtime customizations, as described in Chapter 2, "Understanding the Customization Development Lifecycle."
In addition, you need to perform the following tasks before you can begin customizing your application:
Install JDeveloper and set up your development environment. Before you can implement customizations using JDeveloper, you must create a workspace that imports the necessary parts of the application you want to customize. For more information, see the "Setting Up Your Development Environment" chapter of the Oracle Fusion Applications Developer's Guide.
Create a customization application workspace. For more information, see Chapter 10, "Using JDeveloper for Customizations."
Start JDeveloper in the appropriate role.
For more information, see Chapter 10, "Using JDeveloper for Customizations."
As described in Table 12-1, you can customize SOA components during runtime in a deployed composite with a runtime tool. This section provides an overview of these tasks and provides references to additional documentation for more specific instructions.
Note:
You cannot customize SOA components in CRM Application Composer. However, you can extend a business event in CRM Application Composer and use the Event notification action to notify a SOA composite by email of the occurrence of the event. For information about extending events in CRM Application Composer, see Section 4.2, "Editing Objects."
Task: Start the Runtime Customization Tool
Use a web browser to start the tools shown in Table 12-2 for customizing approval configuration and assignment rules, nonapproval business rules, domain value maps, and composite endpoint properties at runtime:
Table 12-2 Starting the Customization Tool
For Customizing... | Start... | By Entering... |
---|---|---|
Business rules |
||
|
Note: If you use Oracle SOA Composer to customize approval configuration and assignment rules during runtime, changes in subsequent revision patches are not applied successfully. |
http://host:port/integration/worklistapp http://host:port/soa/composer |
|
Oracle SOA Composer |
http://host:port/soa/composer |
Domain value maps |
Oracle SOA Composer |
http://host:port/soa/composer |
Composite endpoint properties such as OWSM security policies and binding component properties |
Oracle Enterprise Manager Fusion Applications Control |
http://host:port/em |
Task: Select the Data to Customize
After accessing the runtime customization tool to use, select the data to customize.
Oracle SOA Composer:
From the Open list in Oracle SOA Composer, select the data to customize, as shown in Figure 12-1.
Table 12-3 describes the options available for selection.
Table 12-3 Selecting the Data to Customize
For Customizing... | Select... |
---|---|
Nonapproval business rules |
Open Rules |
Domain value maps |
Open DVM |
Approval configuration and assignment rules |
Open Task Note: If you use Oracle SOA Composer to customize approval configuration and assignment rules during runtime, changes in subsequent revision patches are not applied successfully. |
Oracle BPM Worklist:
In the Administration section, click the Task Configuration tab.
Select a specific approval configuration and assignment rule task to customize.
The Event Driven and Data Driven tabs are now accessible.
Select a task to view or customize from the list of task types.
Oracle Enterprise Manager Fusion Applications Control:
In the navigation pane in Oracle Enterprise Manager Fusion Applications Control, expand the SOA folder.
Expand soa-infra.
Expand the partition in which the SOA composites are deployed (for example, default).
Select the SOA composite to customize.
Task: Customize Business Rules
Two categories of rules are available:
Approval configuration and assignment rules:
You can customize approval configuration and assignment rules included in a deployed composite in Oracle BPM Worklist (recommended), as shown in Figure 12-2, or in Oracle SOA Composer, as shown in Figure 12-3.
For more information, see the following:
The "Using Approval Management Features of the Oracle BPM Worklist and Process Workspace" section of the Oracle Fusion Middleware Modeling and Implementation Guide for Oracle Business Process Management (for Oracle BPM Worklist)
The "Working with Tasks at Run Time" section of the Oracle Fusion Middleware User's Guide for Oracle Business Rules (for Oracle SOA Composer)
How to customize the text in notifications in Oracle BPM Worklist is decided by what you want to customize in the task detail page (the page rendered when you click the task in Oracle BPM Worklist):
Some strings are part of Oracle SOA Suite, other strings are part of the Oracle Fusion Applications-owned Oracle Application Development Framework (ADF) resource bundle, and other strings are part of the Oracle Fusion Applications-owned SOA resource bundle.
Task title, task outcome, approval reason, stage name, and participant type strings are stored in the Oracle Fusion Applications-owned SOA resource bundles. You cannot customize these because there is no support for that functionality in Oracle SOA Suite.
Business object-specific text and sections are implemented in ADF and resource bundles are owned by Oracle Fusion Applications. These strings can only be customized in JDeveloper.
The Oracle SOA Suite-owned strings correspond to those in the Comments, Attachment, and History sections in Oracle BPM Worklist. The actions along the top of the page (excluding the custom actions defined in the .task
file) are also part of Oracle SOA Suite. These strings in the Oracle SOA Suite-owned resource bundles can be customized by following the instructions in the "Resource Bundles in Workflow Services" section of the Oracle Fusion Middleware Developer's Guide for Oracle SOA Suite.
How text appears in email notifications for human tasks is also decided by what you want to customize:
The subject (derived from the task title) and custom outcomes are defined in the Oracle Fusion Applications-owned SOA resource bundle. You cannot customize these because there is no support for that functionality in Oracle SOA Suite.
You can customize the notification message (the first line of instructions in the email) during runtime in Oracle BPM Worklist.
The remaining email content is the same as customizing the text in notifications in Oracle BPM Worklist.
Nonapproval business rules:
You can view, customize, and commit changes to a rule dictionary included in a deployed composite in Oracle SOA Composer, as shown in Figure 12-4. Supported customizations consist of the following:
Customizing dictionary bucketsets
Customizing rules in a ruleset
Customizing advanced rule settings
Customizing conditions and actions
Customizing advanced mode rules
Customizing decision tables
Validating rule dictionaries
For more information about customizing business rules in Oracle SOA Composer, see the "Using Oracle SOA Composer with Oracle Business Rules" chapter of the Oracle Fusion Middleware User's Guide for Oracle Business Rules.
Task: Customize Domain Value Maps
You can customize domain value map rows included in a deployed composite in Oracle SOA Composer, as shown in Figure 12-5. For more information, see the "Using Oracle SOA Composer with Domain Value Maps" chapter of the Oracle Fusion Middleware Developer's Guide for Oracle SOA Suite.
Task: Customize Composite Endpoint Properties
You can customize endpoint address properties for an external reference such as OWSM security policies and binding components included in a deployed composite in Oracle Enterprise Manager Fusion Applications Control.
Figure 12-6 provides details about customizing OWSM security policies. For more information, see the "Managing SOA Composite Application Policies" section of the Oracle Fusion Middleware Administrator's Guide for Oracle SOA Suite and Oracle Business Process Management Suite.
Figure 12-7 provides details about customizing binding component properties for services and references. For more information, see the "Configuring Service and Reference Binding Component Properties" chapter of the Oracle Fusion Middleware Administrator's Guide for Oracle SOA Suite and Oracle Business Process Management Suite.
Figure 12-7 Binding Component Property Customizations in Oracle Enterprise Manager Fusion Applications Control
Task: Synchronizing Customized Flexfields in the MDS Repository for SOA
SOA composites in Oracle Fusion Applications reference copies of the original XSD schema files included in the MDS Repository for SOA. When you customize and deploy Oracle Fusion Applications flexfields (or upgrade the base table, after which the flexfields are automatically re-applied), which result in a new XSD being generated in the MDS Repository for Oracle Fusion Applications, the updated XSD files must be synchronized in the MDS Repository for SOA for use in the fact models in business rules.
To perform this synchronization, a special SOA composite named UpdateSOAMDS is included with Oracle Fusion Applications. By default, the UpdateSOAMDS composite is automatically deployed. When a synchronization is required, you manually invoke an instance of this composite to synchronize the updated XSD files in the MDS Repository for SOA. You can view the results of this synchronization in the audit trail in Oracle Enterprise Manager Fusion Applications Control.
Invoke the UpdateSOAMDS composite.
Log in to Oracle Enterprise Manager Fusion Applications Control.
In the navigation pane, expand soa-infra and the domain.
Select the UpdateSOAMDS composite.
At the top of the Dashboard page for UpdateSOAMDS, click Test.
In the Operation list, note that the updateDuring operation is selected, as shown in Figure 12-8.
The updateDuring operation specifies how far back in time to go to get flexfield updates for synchronizing in the MDS Repository for SOA.
In the Value field of the Input Arguments section, enter a value, as shown in Figure 12-9.
Table 12-4 provides examples of how to specify a value. The updateDuring operation uses the xsd:duration
type as input to obtain the data.
Click Test Web Service.
The list of XSD schema files synchronized in the MDS Repository for SOA is returned as output in the Response tab, as shown in Figure 12-10.
All rule dictionaries in the MDS Repository for SOA that use the impacted XSD schemas are altered. The data model of the rule dictionaries is modified and the fact types are re-imported. After re-importing the XSD schemas, the rule dictionaries are saved in the MDS Repository for SOA.
The Java Architecture for XML Binding (JAXB) 2.0 classes for the fact type model of the rule dictionaries that have been altered are regenerated and compiled into the appropriate composite SCA-INF/gen-classes
directories.
Other SOA instances in the cluster are notified of the flexfield customizations.
The composite class loader for the SOA composites in which the rule dictionaries were altered is invalidated and a new class loader is extended with the next request for the composite.
The SOA instances not involved in updating the rule dictionaries in the MDS Repository for SOA regenerate the JAXB 2.0 classes for the composites that comprise rule dictionaries in which the fact type model was altered.
View the results in the audit trail.
In the Recent Instances section of the Dashboard page, click the instance ID.
In the Trace section of the Flow Trace page, click the UpdateSOAMDS BPEL service component.
View the list of XSD schema files synchronized in the MDS Repository for SOA in the audit trail, as shown in Figure 12-11.
Note:
In previous releases, Oracle BPM Worklist included a feature known as flex fields. Starting with Release 11g R1 (11.1.1.4), flex fields are now known as mapped attributes. Do not confuse Oracle BPM Worklist flex fields with Oracle Fusion Applications flexfields; they are completely different features.
After using a composite customized at runtime for a period of time, a new patch revision of the composite may become available. Repeating the process of customizing the new revision of the composite at runtime can be cumbersome and time-consuming. To avoid these challenges, use OPatch. OPatch is an Oracle-supplied, Java-based utility that enables you to merge customizations made during runtime in a previously deployed composite into a new patch revision of the composite. OPatch preserves your runtime customizations and prevents you from having to re-enter the customizations again for the next patch revision.
OPatch merges a new patch revision into a composite that was previously customized during both design time in JDeveloper and runtime in Oracle SOA Composer, Oracle BPM Worklist, or Oracle Enterprise Manager Fusion Applications Control. For specific procedures on patching SOA composites with OPatch, see the "Patching Service-Oriented Architecture (SOA) Composites" section of the Oracle Fusion Applications Patching Guide.
Task: Merge Runtime Customizations from a Previously Deployed Revision into a New Revision
Before using OPatch to merge runtime customizations from a previously deployed revision into a new revision, review the recommendations in Table 12-5 to ensure that you merge customizations successfully.
Table 12-5 Recommendations on Merging Patch Revision Customizations and Extensions
Component | Recommendation |
---|---|
Deletion of base components |
Delete only components you added as part of the customization, and not components that are part of the base revision. This is because the deletion of base components does not survive the move to the new revision, but the deletion of the wiring does. If you delete an existing base component, it comes back again when you get the new revision, which still has the component. However, the wire deletion survives the upgrade because the |
Business rules |
If business rules are customized at runtime, and those runtime customizations must be preserved in subsequent revisions of the base version of the composite, it is recommended that the rules dictionaries be split into two dictionaries and linked using the dictionary linking functionality. The base rule, linked dictionary contains the data model of the dictionary and the custom rules dictionary contains all the rules customized at runtime. The OPatch process preserves the customized dictionary when it merges the customized application with subsequent versions of the application. Business rules are used in different scenarios and the following information identifies how to handle each situation.
|
Default uniform resource locators (URLs) for service binding components |
Use default URLs for service binding components. If the revision is used in the URL for service binding components, when the SOA composite is patched using OPatch, the revision of the composite is customized. In this case, the reference to URLs for service binding components fails to work. In this scenario, you must manually update all the URL references for service binding components. |
Oracle BPEL Process Manager scope activity |
If a base composite team removes the scope activity in the next revision of the composite, when a vertical composite team or customer runs OPatch to apply the new revision of the composite to their customized version, all customizations they performed on that scope activity in the first revision are lost. |
Renaming of a composite whose SOA archive (SAR) file is imported in JDeveloper |
When importing a SAR file for customization in JDeveloper, the composite must not be renamed. In addition, if you rename a composite, OPatch cannot detect runtime customizations made in Oracle SOA Composer, Oracle BPM Worklist, and Oracle Enterprise Manager Fusion Applications Control. You must manually re-apply those customizations. |
Base revision of a composite with JDeveloper customizations |
Assume you customize the base revision of a composite with the Customization Developer role in JDeveloper, and then deploy the composite. When the base revision is updated and a newer revision is made available, the customer uses OPatch to apply the patch revision. OPatch may then fail because there are JDeveloper customizations in the deployed composite. To resolve this issue, perform the following steps:
Note: Ensure that the backup of the SAR files is taken properly. |
You can customize or extend some SOA components during design time in JDeveloper when logged in with the Customization Developer role. Components that are extended in JDeveloper can be further customized in JDeveloper when again logged in with the Customization Developer role. Customization changes are maintained in separate .xml
files from the base component files. Note that you cannot make customizations in Source view in JDeveloper; only customizations made in Design view are supported.
Notes:
New artifacts extended in the composite survive patching.
Ensure that you provide unique names for any new components and artifacts that you extend. For example, prefix each component and artifact name with a unique identifier.
Table 12-6 describes which existing base composite artifacts in a composite can be customized and which new artifacts can be extended when logged in to JDeveloper with the Customization Developer role.
Table 12-6 Customizable and Extendable Artifacts in Customization Developer Role
Artifacts | Existing Artifact in Base Composite is Customizable with Customization Developer Role? | Artifact is Extendable with Customization Developer Role? |
---|---|---|
Composite components |
Yes |
Yes |
BPEL process |
Yes |
Yes |
Oracle Mediator |
Yes |
Yes |
Human task |
No |
Yes |
Business rule |
No |
Yes |
Extensible style sheet language transformations (XSLT) Map |
No |
Yes |
Cross references (XREFs) |
No |
No |
Domain value maps |
No |
No |
XSD |
No |
Yes |
WSDL |
No |
Yes |
Business events |
No |
Yes |
JCA Adapters |
No |
Yes |
Table 12-7 provides more specific details about which artifacts can be extended when logged in to JDeveloper with the Customization Developer role.
Table 12-7 Artifact Extensibility in JDeveloper with Customization Developer Role
Artifact | Extendable? | Description |
---|---|---|
Composite |
No |
Only one composite per Oracle SOA Suite project is permitted. |
BPEL process |
Yes |
Can drag a BPEL process from the Component Palette into SOA Composite Editor or Oracle BPEL Designer. |
Oracle Mediator |
Yes |
Can drag an Oracle Mediator from the Component Palette into SOA Composite Editor or Oracle BPEL Designer. |
Human task |
Yes |
Can drag a human task from the Component Palette into SOA Composite Editor or Oracle BPEL Designer. |
Business rule |
Yes |
Can drag a business rule from the Component Palette into SOA Composite Editor or Oracle BPEL Designer. |
XSLT map |
Yes |
Can extend a transformation in a transform activity in Oracle BPEL Designer or Mediator Editor. |
Domain value maps |
No |
The New Gallery dialog is disabled with the Customization Developer role. |
XREFs |
No |
The New Gallery dialog is disabled with the Customization Developer role. |
XSD |
Yes |
Right-click an Oracle SOA Suite project and select SOA, or as the result of extending other SOA artifacts. |
WSDL |
Yes |
Right-click an Oracle SOA Suite project and select SOA, or as the result of extending other SOA artifacts. |
Business events |
Yes |
Subscribe to or publish events for a BPEL process or Oracle Mediator component in SOA Composite Editor, Oracle BPEL Designer, or Mediator Editor. |
JCA adapters |
Yes |
Drag adapters from the Component Palette into SOA Composite Editor or Oracle BPEL Designer. |
Task: Customize a Base Composite in JDeveloper
You can customize a base composite of Oracle Fusion Applications in JDeveloper. These steps provide an overview of composite customization and assume that you know the following:
How to set up the customization layer through the adf-config.xml
editor
The customization classes defined by Oracle Fusion Applications
For more information, see the "Customizing SOA Composite Applications" chapter of the Oracle Fusion Middleware Developer's Guide for Oracle SOA Suite.
Note:
See Section 10.3.2, "Setting Up the JDeveloper Workspace and Composite Project for MDS Repository Customization" for instructions on setting up the JDeveloper workspace (JWS) and composite project when customizing Oracle Fusion Applications composites.
Install Oracle Fusion Applications with a SOA composite that you want to customize in JDeveloper.
In Oracle Enterprise Manager Fusion Applications Control, go to the home page of the SOA composite to export.
From the SOA Composite menu at the top of the page, select Export.
Obtain the base SAR file for initially customizing from other locations, including:
Checking out the base composite project from the source control system where the base composite project was checked in by the base development team. This way, no SAR file deployment, export command, or import command is involved.
Importing the base composite SAR file that was deployed from the base composite project.
Importing the base composite SAR file that was exported (without runtime changes) from the Export Composite page of the Oracle Enterprise Manager Fusion Applications Control installation from which the SOA server is managed.
Extend layer values for customization to the CustomizationLayerValues.xml
file (can perform this task in JDeveloper or from the directory structure).
Start JDeveloper in the Default Role.
Extend a new composite application.
From the File main menu, select Import > SOA Archive Into SOA Project to import the exported SAR into the new composite in JDeveloper.
In the Import Composite Archive wizard, select the Import For Customization checkbox.
From the Tools main menu, select Preferences > Roles > Customization Developer.
Restart JDeveloper, and customize the layers of the composite.
Right-click the project and select Deploy to extend a customized SAR of the SOA composite in Oracle Fusion Applications.
Note:
After performing the initial customizations described in these procedures, you can no longer export the composite from the runtime. This is because the composite is a merged composite, and no longer the original base composite.
For more information about exporting SAR files, see the "Exporting a Deployed SOA Composite Application" section of the Oracle Fusion Middleware Administrator's Guide for Oracle SOA Suite and Oracle Business Process Management Suite.
Task: Extend or Customize Custom Business Rules
You can extend business rules in a composite during design time in JDeveloper when logged in with the Customization Developer role. After extending these business rules, you can further customize them in JDeveloper when again logged in with the Customization Developer role. You cannot customize existing business rules that are part of the base version of the composite.
For information about customizing business rules during runtime, see Section 12.2, "Customizing SOA Composites."
Task: Extend or Customize Custom BPEL Processes
You can extend or customize BPEL processes in a composite during design time in JDeveloper when logged in with the Customization Developer role. For example, you can perform the following tasks:
Extend or delete a new scope or other activity
Customize an activity
Extend a partner link
Extend a transformation
For more information about extending or customizing BPEL processes, see the "Using the BPEL Process Service Component" part of the Oracle Fusion Middleware Developer's Guide for Oracle SOA Suite.
Task: Extend or Customize Custom Human Tasks
You can extend human tasks in a composite during design time in JDeveloper when logged in with the Customization Developer role. After extending these human tasks, you can further customize them in JDeveloper when again logged in with the Customization Developer role. You cannot customize existing human tasks that are part of the base version of the composite.
For more information about extending human tasks, see the "Using the Human Workflow Service Component" part of the Oracle Fusion Middleware Developer's Guide for Oracle SOA Suite.
Task: Extend or Customize Custom Oracle Mediators
You can extend or customize Oracle Mediators in a composite during design time in JDeveloper when logged in with the Customization Developer role. For example, you can perform the following tasks:
Extend a routing rule
Customize an XPath condition
Make any other changes, except those that impact files such as extensible style sheet languages (XSLs) (for transformations), WSDLs, event definition languages (EDLs) (for business events), or XSDs. Note that new artifacts can be extended or customized.
For more information, see the "Using the Oracle Mediator Service Component" part of the Oracle Fusion Middleware Developer's Guide for Oracle SOA Suite.
Task: Customize Composite Components
You can customize composite endpoint properties in a composite during design time in JDeveloper when logged in with the Customization Developer role. For example, you can perform the following tasks:
Extend and delete a reference binding component
Extend and delete a service binding component (entry point)
Extend, customize, and delete a wire between components
For more information, see the "Developing SOA Composite Applications with Oracle SOA Suite" chapter of the Oracle Fusion Middleware Developer's Guide for Oracle SOA Suite.
Task: Extend or Customize Transformations (in a Transform Activity)
You cannot customize existing transformations that are part of the base composite in JDeveloper. However, you can extend a new transform activity in a BPEL process or in the Transformation Map dialog of Oracle Mediator during design time in JDeveloper when logged in with the Customization Developer role. After extending the transformation, you can further customize it in JDeveloper when again logged in with the Customization Developer role. For example, you can perform the following tasks:
Specify the mapper file (.xsl
) to which the transform activity points from the Mapper File field of a transform activity in a BPEL process or the Transformation Map dialog of Oracle Mediator. However, you cannot extend or customize mappings. The mappings are defined in the XSL file (not in the transform activity), which is not customizable.
Copy an out-of-the-box XSL file into a custom XSL artifact, add the custom logic to the custom XSL, and customize the transform activity to reference the custom XSL. Additionally, you must copy the contents of the XSL file in the base composite into the custom XSL file.
Task: Extend XSD or WSDL Files
You can extend an XSD schema or WSDL document in JDeveloper when logged in with the Customization Developer role.
Right-click the Oracle SOA Suite project in the Application Navigator.
Select SOA.
Select the artifact to extend:
Create XML Schema
Invokes the Create XML Schema dialog for extending a new XML schema file in the project. When complete, the new schema file automatically opens.
Create WSDL Document
Invokes the Create WSDL dialog to extend a new WSDL file in the project.
Task: Extend Business Events
You cannot directly extend business events in JDeveloper when logged in with the Customization Developer role. The New Gallery dialog that is displayed when you select New from the File main menu is disabled with the Customization Developer role. However, you can create business events as part of other Oracle SOA Suite customizations such as when allowing Oracle Mediator to subscribe to an event.
For more information, see the "Using Business Events and the Event Delivery Network" chapter of the Oracle Fusion Middleware Developer's Guide for Oracle SOA Suite.
Task: Extend JCA Adapters
You can extend JCA adapters in JDeveloper when logged in with the Customization Developer role.
For more information, see the Oracle Fusion Middleware User's Guide for Technology Adapters.
You must redeploy a customized or extended composite after making changes in JDeveloper. The development and deployment phase is as follows:
During base composite development, you create a customizable SOA project from the Default role in JDeveloper, set up customization layers, and deploy the composite to a base SAR file.
During customization, you import (for customization) the base composite SAR file to extend a new SOA project, change from the Default role to the Customization Developer role, perform customizations, and deploy the composite to create a customized SAR file.
For more information, see the "Customizing SOA Composite Applications" chapter of the Oracle Fusion Middleware Developer's Guide for Oracle SOA Suite.
You can extend new SOA composite services to integrate with Oracle Fusion Applications. This section provides an overview of tasks for extending and consuming new services and provides references to documentation that more specifically describes these tasks.
Task: Setting Up a Development Environment
You must set up and configure a development environment in JDeveloper to create new Oracle SOA Suite services. For more information, see the "Getting Started Building Your Oracle Fusion Applications" part of the Oracle Fusion Applications Developer's Guide.
Task: Using JDeveloper to Create Applications, Projects, and Services
Whenever you create new projects, you must first create an application using templates provided by JDeveloper. For more information, see the "Setting Up Your JDeveloper Workspace and Projects" chapter of the Oracle Fusion Applications Developer's Guide.
You can select an Oracle SOA Suite project template when creating a JDeveloper application. For more information about creating Oracle SOA Suite projects, see the "Developing SOA Composite Applications with Oracle SOA Suite" chapter of the Oracle Fusion Middleware Developer's Guide for Oracle SOA Suite.
You can extend an ADF Business Components service to be consumed by the SOA composite. The ADF Business Components service is used for connecting Oracle ADF applications using service data object (SDO) data formats with the SOA composite. For more information, see the "Getting Started with Binding Components" chapter of the Oracle Fusion Middleware Developer's Guide for Oracle SOA Suite.
Task: Understanding Common Service Use Cases and Design Patterns
There are fundamental patterns for Oracle Fusion Applications developers to follow when building applications involving Oracle ADF and Oracle SOA Suite. These patterns fall into three main categories:
Using business events to initiate business processes
Orchestrating over business logic implemented with Oracle ADF, Java, procedural language/structured query language (PL/SQL), and SOA composite applications
Modeling human task flows in Oracle ADF applications
For more information about these and other design categories, see the "Common Service Use Cases and Design Patterns" part of the Oracle Fusion Applications Developer's Guide.
Task: Using Oracle SOA Suite with MDS Repository
MDS Repository contains metadata for certain types of deployed applications, such as SOA composites. You can store Oracle Fusion Applications artifacts and custom artifacts in MDS Repository. You connect to the repository to consume these artifacts.
For more information about MDS Repository, see the "Managing the Metadata Repository" chapter of the Oracle Fusion Middleware Administrator's Guide.
For more information about creating a connection from Oracle SOA Suite to MDS Repository, using the MDS Repository for SOA to store custom artifacts, and connecting to and consuming artifacts from the MDS Repository for SOA, see the "Creating a SOA-MDS Connection" section of the Oracle Fusion Middleware Developer's Guide for Oracle SOA Suite.
Task: Discovering Oracle Fusion Applications Services
Oracle Fusion Applications includes web services that are available for public consumption. These web services are defined in Oracle Enterprise Repository and available for discovery. When extending Oracle Fusion Applications and building SOA composites to invoke services built by Oracle Fusion Applications, you can use Oracle Enterprise Repository to perform the following tasks:
Use Oracle Enterprise Repository to discover the service.
Follow the link provided by Oracle Enterprise Repository to access the WSDL file.
When building the client, have JDeveloper download the WSDL file locally so that the client is not accessing the runtime WSDL file.
For more information about Oracle Enterprise Repository, see the Oracle Fusion Middleware User Guide for Oracle Enterprise Repository.
Task: Securing Oracle Fusion Applications and Services
You must secure Oracle Fusion Applications and services to be consumed by SOA composites.
For more information about Oracle Fusion Applications security, see the Oracle Fusion Applications Security Guide.
For more information about ADF Application Artifacts security, see Chapter 15, "Customizing Security for ADF Application Artifacts."
For more information about web services security, see the "Securing Web Services Use Cases" chapter of the Oracle Fusion Applications Developer's Guide.
Task: Deploying SOA Composites and Services
You must deploy SOA composites and the services to be consumed.
For more information about deploying SOA composites, see the "Deploying SOA Composite Applications" chapter of the Oracle Fusion Middleware Developer's Guide for Oracle SOA Suite.
For more information about deploying external references such as web services, see the "Deploying Web Services Applications" chapter of the Oracle Fusion Middleware Security and Administrator's Guide for Web Services.
Task: Understanding Fusion Applications Deployment Topology
An enterprise deployment is an Oracle guidelines blueprint based on proven Oracle high-availability and security technologies and recommendations for Oracle Fusion Applications. For more information about deployment in an enterprise environment, see the Oracle Fusion Applications Customer Relationship Management Enterprise Deployment Guide.