Free MuleSoft CONNECT Keynote & Expo Pass Available!

Register now+
Nav

Oracle E-Business Suite 12.2 Connector

Premium

The Oracle E-Business Suite 12.2 Connector facilitates connections between Mule integration and Oracle E-Business Suite 12.2 applications.

About the Connector Architecture

Oracle EBS offers different technologies or products to address various types of integrations. The most widely used integrations for enterprise applications are:

  • Data-centric integration.

  • Integration through Web Services using Integrated SOA gateway.

The following illustration shows the integration architecture of the MuleSoft Oracle EBS connector:

Oracle EBS 12.2 - Connector Architecture

Prerequisites

This document assumes that you are familiar with Mule, Anypoint Connectors, Anypoint Studio, Mule concepts, elements in a Mule flow, and Global Elements.

You need login credentials to test your connection to your target resource.

For hardware and software requirements and compatibility information, see the Connector Release Notes.

To use this connector with Maven, view the pom.xml dependency information in the Dependency Snippets in Anypoint Exchange.

What’s New in this Connector

Support for Mule 4 has been added.

To Connect in Design Center

  1. In Design Center, click Set Up > Upload, browse for and select the driver for this connector on your file system, and upload it. Alternatively, search for and select a driver that is already uploaded.

  2. Click a trigger. You can create a global element by selecting this connector as they trigger. If a global element is not needed, you can use an HTTP Listener or Scheduler trigger.

    Trigger options

  3. To create an HTTP global element for the connector, set these fields:

    Http Listener configuration

    Field Description

    Protocol

    Protocol selected for the HTTP endpoint, it can be HTTP or HTTPS (secure).

    Host

    IP address where your Mule application listens for requests.

    Port

    Port address where your Mule application listens for requests.

    Base Path

    path where your Mule application listens for requests.

  4. Select the plus sign to add a component.

    add connector

  5. Select the connector as a component.

  6. Configure the Global element for the connector

    config connector

    Field Description

    Host

    Enter the host of the Oracle EBS instance.

    Port

    Enter the port of the Oracle EBS web services.

    SSL enabled

    If checked, attempts to make web services calls using HTTPS instead of HTTP.

    Username

    Username to log into Oracle EBS web services.

    Password

    Password for the username.

    Rest Service Locator alias

    Name assigned to the web service with Internal Name oracle.apps.fnd.rep.ws.service.EbsRestLocator when deployed.

    FND Web Sec alias

    Name assigned to the PL/SQL web service with Internal Name FND_WEB_SEC when deployed.

    Responsibility name

    Enter the responsibility name that is needed to execute the operation.

    Responsibility application name

    Enter the application short name that is needed to execute the operation.

    Security group name

    Enter the security group key of the Oracle EBS instance (optional). Default value is STANDARD.

    NLS language

    Enter the NLS language of the Oracle EBS instance (optional). Default value is AMERICAN.

    Org. ID

    Enter the organization ID of the Oracle EBS instance (optional).

  7. Choose the operation.

    connector Operation

    Field Description

    PL/SQL

    Set your WADL.

    Operation

    Set your operation.

To Connect in Anypoint Studio 7

You can use this connector in Anypoint Studio by adding it as a dependency in your Mule application.

Install the Connector in Studio

  1. Open your Mule project in Anypoint Studio.

  2. Add the connector as a dependency in the pom.xml file:

    
                 
              
    1
    2
    3
    4
    5
    6
    
    <dependency>
      <groupId>org.mule.modules</groupId>
      <artifactId>oracle-ebs-122-extension</artifactId>
      <version>2.0.0</version>
      <classifier>mule-plugin</classifier>
    </dependency>

To Use the Connector

  1. Deploy the REST Service location so that you can later expose your PL/SQL services for the connector to consume. See the Oracle Developer’s Guide Tutorial link in the See Also section.

    The following steps describe the procedure to deploy the PL/SQL Adjustment API as a REST service. The same guide applies to any PL/SQL.

  2. Log in to the Oracle E-Business Suite as a user who has the Integration Administrator role.

  3. Select the Integrated SOA Gateway responsibility and the Integration Repository link from the navigation menu.

  4. In the Integration Repository tab, click Search to access the main Search page.

  5. Click Show More Search Options to display more search fields.

  6. Enter the following key search values as the search criteria:

    • Category: Interface Subtype

    • Category Value: PL/SQL

    • Internal Name: FA_ADJUSTMENT_PUB

      Deploy PL/SQL - Search

  7. Click Go to execute the search.

  8. Click the Adjustments API link to see the interface details.

    Deploy PL/SQL - Adjustment API

  9. Click the REST Service Locator interface name link to open the interface details page.

  10. In the REST Web Service tab, enter the following information:

    Deploy PL/SQL - Adjustment API Configuration

    Important: The alias of the deployed web service MUST be:
    1) The internal name.
    2) In lowercase. The alias information can be found under the Service Alias label. In this example, it is fa_adjustment_pub.

  11. Click Deploy to deploy the service to an Oracle E-Business Suite WebLogic environment.

    After the REST service successfully deploys, Deployed appears in the REST Service Status field along with the View WADL link.

  12. Click the View WADL link to view the deployed service WADL description.

    Deploy PL/SQL - Adjustment API Deployed

To Configure in Studio

  1. Drag and drop the connector to the Anypoint Studio canvas.

  2. Configure the Global element for the connector.

    config connector

    Field Description

    Host

    Enter the host of the Oracle EBS instance.

    Port

    Enter the port of the Oracle EBS web services.

    SSL enabled

    If checked, the connector makes web services calls using HTTPS instead of HTTP.

    Username

    Username to log into Oracle EBS web services.

    Password

    Password for the username.

    Rest Service Locator alias

    Name assigned to the web service with the internal name oracle.apps.fnd.rep.ws.service.EbsRestLocator when deployed.

    FND Web Sec alias

    Name assigned to the PL/SQL web service with the internal name FND_WEB_SEC when deployed.

    Responsibility name

    Enter the responsibility name that is needed to execute the operation.

    Responsibility application name

    Enter the application short name that is needed to execute the operation.

    Security group name

    Enter the security group key of the Oracle EBS instance (optional). Default value is STANDARD.

    NLS language

    Enter the NLS language of the Oracle EBS instance (optional). Default value is AMERICAN.

    Org. ID

    Enter the organization ID of the Oracle EBS instance (optional).

Use Case: Studio

Follow the steps below to create an Oracle EBS 12.2 global element for web services and PL/SQL invocation:

flow example

  1. Create a new Mule Project in Studio and select an HTTP Listener as a source in the new flow.

  2. Add a new HTTP Listener Configuration global element:

    1. Specify the Host and port parameters with the following values:

      Parameter Value

      Host

      0.0.0.0

      Port

      8081

    2. Click the Save button.

  3. Assign your new Global configuration to your HTTP Listener.

  4. Specify the HTTP Listener path as the /start value.

  5. Drag and drop a Transform Message element and add it the following code:

    
                
             
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    
    %dw 2.0
    output application/xml
    ns ns0 http://xmlns.oracle.com/apps/per/rest/hr_location_api/create_location/
    ---
    {
      ns0#InputParameters: {
        ns0#P_VALIDATE: 0,
        ns0#P_EFFECTIVE_DATE: now,
        ns0#P_LOCATION_CODE: "HR- MuleSoft Office”,
        ns0#P_DESCRIPTION: "Description Office "
      }
    }
  6. Drag and drop a new Oracle E-Business Suite 12.2 component in the flow.

  7. Configure the Oracle E-Business Suite 12.2 connector global element with its environment values under General tab.

  8. In the properties editor of Oracle E-Business Suite 12.2 connector, set PL/SQL to hr_location_api and the Operation to CREATE_LOCATION:

    Oracle Create Location

  9. Copy the following content under the Message > Body section:

    #[payload]
  10. Save and run the project as a Mule Application.

  11. Test the application by navigating to http://127.0.0.1:8081/start

Use Case: XML


         
      
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
<?xml version="1.0" encoding="UTF-8"?>

<mule xmlns:oracle-ebs122="http://www.mulesoft.org/schema/mule/oracle-ebs122"
xmlns:ee="http://www.mulesoft.org/schema/mule/ee/core"
xmlns:http="http://www.mulesoft.org/schema/mule/http"
xmlns="http://www.mulesoft.org/schema/mule/core"
xmlns:doc="http://www.mulesoft.org/schema/mule/documentation"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.mulesoft.org/schema/mule/core
http://www.mulesoft.org/schema/mule/core/current/mule.xsd
http://www.mulesoft.org/schema/mule/http
http://www.mulesoft.org/schema/mule/http/current/mule-http.xsd
http://www.mulesoft.org/schema/mule/ee/core
http://www.mulesoft.org/schema/mule/ee/core/current/mule-ee.xsd
http://www.mulesoft.org/schema/mule/oracle-ebs122
http://www.mulesoft.org/schema/mule/oracle-ebs122/current/mule-oracle-ebs122.xsd">
                <configuration-properties file="mule-app.properties"/>

        <http:listener-config name="HTTP_Listener_config" doc:name="HTTP Listener config" basePath="/" >
                <http:listener-connection host="0.0.0.0" port="8081" />
        </http:listener-config>
        <oracle-ebs122:config name="Oracle_ebs122_Config" doc:name="Oracle-ebs122 Config" >
                <oracle-ebs122:plsql-connection host="${config.host}"
                port="${config.port}" username="${config.username}"
                password="${config.password}"
                restServiceLocatorAlias="${config.restServiceLocatorAlias}"
                fndWebSecAlias="${config.fndWebSecAlias}"
                responsibility="${config.responsibility}"
                respApplication="${config.respApplication}"
                securityGroup="${config.securityGroup}"
                nlsLanguage="${config.nlsLanguage}"
                orgId="${config.orgId}"/>
        </oracle-ebs122:config>
        <flow name="oracle-ebs122Flow">
                <http:listener doc:name="Listener" config-ref="HTTP_Listener_config"
                path=/start/>
                <ee:transform doc:name="Transform Message" >
                        <ee:message >
                                <ee:set-payload ><![CDATA[%dw 2.0
output application/xml
ns ns0 http://xmlns.oracle.com/apps/per/rest/hr_location_api/create_location/
---
{
        ns0#InputParameters: {
                ns0#P_VALIDATE: 0,
                ns0#P_EFFECTIVE_DATE: now,
                ns0#P_LOCATION_CODE: "HR- MuleSoft BA”,
                ns0#P_DESCRIPTION: "Buenos Aires Office "
        }
}]]></ee:set-payload>
                        </ee:message>
                        <ee:variables >
                                <ee:set-variable variableName=payload" ><![CDATA[%dw 2.0
output application/xml
ns ns0 http://xmlns.oracle.com/apps/per/rest/hr_location_api/create_location/
---
{
            ns0#InputParameters: {
        ns0#P_VALIDATE: 0,
        ns0#P_EFFECTIVE_DATE: now,
        ns0#P_LOCATION_CODE: 'LocCode001’,
        ns0#P_DESCRIPTION: 'Location 001’
    }
}]]></ee:set-variable>
                        </ee:variables>
                </ee:transform>
                <oracle-ebs122:invoke-pl-sql-rest-service
                doc:name="Invoke PL/SQL REST Service"
                config-ref="Oracle_ebs122_Config"
                operation="CREATE_LOCATION" plSql="hr_location_api">
                        <oracle-ebs122:input ><![CDATA[#[payload]]]></oracle-ebs122:input>
                </oracle-ebs122:invoke-pl-sql-rest-service>
        </flow>
</mule>

See Also