Nav
You are viewing an older version of this section. Click here to navigate to the latest version.

PeopleSoft Connector

Premium

Introduction

Anypoint Connector for PeopleSoft provides real-time connectivity to query and update all PeopleSoft modules, using a common integration interface known as the Component Interface.

The connector has been developed for the PeopleSoft v9.2 and PeopleTools v8.53.02 or higher, which makes it compatible only with a Mule or Runtime Manager instance running on Java v1.7. 

Download JRE 1.7.

View information at the Oracle site on PeopleTools.

Prerequisites

Because of how closely the connector is coupled with PeopleSoft, this document assumes you have :

  • A working knowledge of PeopleSoft.

  • Read the relevant documentation on Component Interfaces and Integration Scenarios for your PeopleTools version.

The definition and detailed explanation of the PeopleSoft terms and concepts used here are freely available in the PeopleBooks documentation set of your PeopleSoft installation.

This document assumes you are familiar with Mule, Anypoint Connectors, and Anypoint Studio Essentials. To increase your familiarity with Studio, consider completing one or more Anypoint Connector quickstart. Further, this page assumes that you have a basic understanding of Mule flows andMule Global Elements.

The document also assumes that you are familiar with Apache Maven.

To use the PeopleSoft connector, you need:

  • Anypoint Studio. If you don’t use Anypoint Studio for development, follow the instructions to install the PeopleSoft Maven dependencies into your pom.xml file .

  • Apache Maven 3.x: If you want to create Mule application using Maven.

  • Java 7: PeopleSoft connector does not work unless you are using JRE 1.7. Download JRE 1.7.

  • Component Interface: At least one Component Interface must be created and exposed within the PeopleSoft instance using the Application Designer.

  • PeopleSoft Java Object Adapter JAR File (psjoa.jar): The psjoa.jar library is compiled and provided by a PeopleSoft administrator, and is unique to each installation of PeopleSoft.

Compatibility

PeopleSoft connector is compatible with:

Application/Service Version

PeopleTools

8.53.02 or higher

PeopleSoft

9.2

Mule Runtime

3.6.0 or higher

Java

1.7.0_x

PeopleSoft Component Interfaces

PeopleSoft Component Interfaces (CI) are a “one-way”, real-time interface to your PeopleSoft database instance. A component in PeopleSoft is a logical grouping of PeopleSoft pages representing a complete business transaction, such as Employee Onboarding. Component Interfaces expose the underlying APIs used by PeopleSoft Components and, therefore, ensure that validations, defaults, and business logic are preserved from the original definition of those components.

The Component Interfaces allow you to query PeopleSoft for specific records, update data, and create new instances of the records.

Component Interface Attributes and Architecture

A component interface has the following four main attributes:

CI+archtecture

  • Component Interface Name: Each component interface requires a unique name. The programs calling a component use the name of the component interface to access properties and methods. 

  • Keys (Get keys, Create keys, and Find keys): Keys are special properties containing values that retrieve an instance (get keys) or a list of instances (find keys) of the component interface. You can add, remove, or change keys in PeopleSoft Application Designer. Keys are created automatically when you create a component interface.

    • Get keys: Map to fields marked as search keys in the Components Search record.

    • Create keys: Generated in CI when the Use tab on the Component Properties dialog allows the Add action.

    • Find keys: Map to fields marked as both Alternate Search keys and Search Key in the Component Search Record.

  • Properties and Collections (Fields and Records): Properties provide access to both component data and component interface settings. A property can correspond to a field or a scroll (collection). A component interface collection is a special type of property that corresponds to a scroll and contains fields and subordinate scrolls as defined in its underlying component. There are two types of properties:  

    • Standard properties are assigned automatically when a component interface is created. 

    • User-defined properties map to record fields on the PeopleSoft component and are displayed in the PeopleSoft Application Designer.

  • Methods: A method is a function that performs a specific task on a component interface at run time. There are two main types of methods: standard and user-defined.

    • Standard methods are those that are available for all component interfaces. The following are the standard methods that the connector supports:

      Method Description

      Create

      Add a new instance of the Component Interface to the PeopleSoft database. This is similar to clicking Add and entering the relevant keys through the PeopleSoft Web UI.

      Cancel

      Cancel an instance of the Component Interface. This is equivalent of the Cancel operation in the Web UI when working on a particular component.

      Find

      Search for any instances of the component that match the provided Search Keys. This returns a list of possible matches.

      Get

      Retrieve instances that match the specific keys you provide. This returns a single record or none at all.

      Save

      Save changes made to the component, new, or existing.

      The Save operation tries to update an existing record before creating a new one. For new records, the connector automatically populates the keys with default values provided by the PeopleSoft instance, thereby reducing the need for the user to provide the default key/values pairs.
    • User-defined methods are created in PeopleSoft Application Designer to provide added functionality to the component interface.

View information at the Oracle site on Component Interfaces. 

Installing and Configuring

Installing

You can "test drive" the PeopleSoft connector in Anypoint Studio using the instructions in To Install a Connector from Anypoint Exchange

To use the PeopleSoft connector in a production environment, you must have either:

  • An Enterprise license to use Mule 

  • A Runtime Manager Starter, Professional, or Enterprise account

Contact the  MuleSoft Sales Team to obtain either of these.

Creating a New Project

To use the PeopleSoft connector in a Mule application project:

  1. In Anypoint Studio, click File > New > Mule Project.

  2. Enter a name for your new project and leave the remaining options with their default values. Make sure the Use Maven option is not selected.

    PS_0001_installing

  3. Select the Create a .gitignore file check box.

  4. Click Next to verify that Java 1.7 is set as your default JRE.

    JRE1.7

  5. Click Finish to create the project.

Using Maven with the Project

To build a Mule application in Studio using Maven:

  1. In Anypoint Studio, click File > New > Mule Project.

  2. Enter a name for your new project and select the Use Maven check box. Define Group Id, Artifact Id, and Version.

    If the Use Maven option is inactive, displaying the Maven is currently disabled, configure Maven* message, click the *Configure Maven link to browse and select the Maven installation home directory on your local drive. Learn more about setting your Maven preferences in Anypoint Studio.

    PS_0001C_installing_maven

  3. Select the Create a .gitignore file check box.

  4. Click Next to verify that Java 1.7 is set as your default JRE. 

    JRE1.7   

  5. Click Finish. Studio builds your Maven Project automatically and displays a Build Success message.

  6. Next, add your psjoa.jar file to the Build Path (Learn how to compile the psjoa.jar file) as follows:

    1. Install the psjoa.jar file locally. 

      
                      
                   
      1
      
      mvn install:install-file -Dfile=psjoa.jar -DgroupId=peoplesoft -DartifactId=psjoa -Dversion=1.0 -Dpackaging=jar

      Click the following link to learn more about third-party JARs: http://maven.apache.org/guides/mini/guide-3rd-party-jars-local.html. 

    2. Based on the command above, add the following dependency to your project’s pom.xml:

      
                      
                   
      1
      2
      3
      4
      5
      
      <dependency>            
      <groupId>peoplesoft</groupId>
      <artifactId>psjoa</artifactId>
      <version>1.0</version>
      </dependency>

Configuring a Global Element

  1. In Anypoint Studio, click the Global Elements tab at the base of the canvas.

  2. On the Global Mule Configuration Elements screen, click Create.

  3. In the Choose Global Type wizard, expand Connector Configuration, and select PeopleSoft: Configuration.
      ConnectorCfgPS

  4. Click Ok.

  5. Configure the parameters according to instructions below.
    PS_0002_globalelement

    Field Description

    Name

    Enter a name for the configuration with which it can be referenced later.

    Server

    Enter the URL of the server from where to access the services. It is entered in the form of Server_Name:Server_Port.

    Username

    Enter a username to log in to PeopleSoft.

    Password

    Enter the password.

    Required Dependencies

    Click Add File to attach the psjoa.jar file that is compiled from your PeopleSoft instance to your project’s Build path. Learn how to compile the psjoa.jar file.

    PS_0003_globalelement_success

    After the psjoa.jar file is attached, it appears in the lib/peoplesoft directory of your project’s root folder.

    PS_0004_globalelement_libsfolder

    If you provide the wrong file (either an invalid psjoa.jar or a completely different library), Studio displays the following error message:

    PS_0005_globalelement_invalidlibs

    The psjoa.jar file is unique to each installation of PeopleSoft. It is compiled and provided by your PeopleSoft administrator. If the psjoa.jar isn’t provided to you, follow the steps below to build the component interface bindings:

    1. Start PeopleSoft Application Designer and open any Component Interface definition. 

    2. Select Build > PeopleSoft APIs to launch the Build PeopleSoft API Bindings dialog box.

    3. Under the Java Classes group box, select the Build check box. Specify the target directory in which you want the Java class source files to be created.

    4. Click OK to build the selected bindings. The files that constitute the bindings are built in the location that you specify. If the operation is successful, a Done message appears in the PeopleSoft Application Designer Build window.

    5. Compile the generated APIs using the following commands:

      
                               
                            
      1
      2
      3
      4
      5
      6
      7
      
      For Windows:
       
      cd %PS_HOME%\class\PeopleSoft\Generated\CompIntfc
      javac −classpath %PS_HOME%\class\psjoa.jar *.java
       
      cd c:\pt8\class\PeopleSoft\ Generated\ PeopleSoft
      javac −classpath %PS_HOME%\class\psjoa.jar *.java
      
                               
                            
      1
      2
      3
      4
      5
      6
      7
      
      For Mac/Linux:
      
      cd $PS_HOME/class/PeopleSoft/Generated/CompIntfc
      javac classpath $PS_HOME/class/psjoa.jar *.java
      
      cd $PS_HOME/class/PeopleSoft/Generated/PeopleSoft
      javac classpath $PS_HOME/class/psjoa.jar *.java
  6. Keep the Pooling Profile and the Reconnection tabs with their default entries.

  7. Click Test Connection to receive a Connection Successful message. If you receive an error, try the following resolutions based on the error message:

    1. Unsupported major/minor version 51.0: Indicates that you are running with a 1.6 JRE. To resolve this, ensure that you are running with Java 1.7 and restart Studio.

    2. java.lang.NoClassDefFoundError: psft/pt8/joa/ISession and java.lang.ClassNotFoundException: psft.pt8.joa.ISession: These exceptions indicate that you haven’t installed the psjoa.jar file. To access PeopleSoft Component Interface in your Mule flows, you must add the PeopleSoft Component Interface API to your project. Compile the API using the PeopleSoft Application Designer Build Window and provide the archive name as psjoa.jar. To solve the issue, go back to the Required dependencies panel and select the corresponding JAR file.

  8. Configure your Component Interface Whitelist according to the steps below:

    1. Click Create Object manually and click the button next to it. 

      PS_0006_globalelement_whitelist 

    2. On the pop-up window, select the (+) plus button to set the names of your component interfaces.

      PS_0007_globalelement_whitelist2

    3. Right-click a metadata item and click Edit the selected metadata field to enter the values.
      Edit+Meta+Data

    4. Click OK to save the list.

    5. Click OK to save the global connector configurations.

XML Editor

Ensure you have included the PeopleSoft namespaces in your configuration file.


          
       
1
2
3
4
5
6
7
8
9
10
11
12
<mule xmlns="http://www.mulesoft.org/schema/mule/core"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      xmlns:peoplesoft="http://www.mulesoft.org/schema/mule/peoplesoft"
      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/peoplesoft
               http://www.mulesoft.org/schema/mule/peoplesoft/current/mule-peoplesoft.xsd">
 
      <!-- here go your flows and configuration elements -->
 
</mule>

Follow these steps to configure a PeopleSoft connector in your application.

  1. Create a global element for PeopleSoft configuration using the following global configuration code:

    
                 
              
    1
    
    <peoplesoft:config name="PeopleSoft" server="${mule.peoplesoft.server}" username="${mule.peoplesoft.username}" password="${mule.peoplesoft.password}" doc:name="PeopleSoft">
    Parameter Description

    name

    Enter a name for the configuration with which it can be referenced later.

    server

    Enter the URL of the PeopleSoft instance.

    username

    Enter a username to log into PeopleSoft.

    password

    Enter the password.

    doc:name

    The default value is PeopleSoft.

  2. Configure your Component Interface. Find the ** <peoplesoft:component-interface-ids-white-list ref="#[payload]"/> internal tag and replace it with the following:

    
                 
              
    1
    2
    3
    4
    5
    6
    7
    8
    
    <peoplesoft:component-interface-ids-white-list>
    <peoplesoft:component-interface-ids-white-list>
    YOUR_COMPONENT_INTERFACE_NAME_1
    </peoplesoft:component-interface-ids-white-list>
    <peoplesoft:component-interface-ids-white-list>
    YOUR_COMPONENT_INTERFACE_NAME_2
    </peoplesoft:component-interface-ids-white-list>
    </peoplesoft:component-interface-ids-white-list>
  3. Save the changes made to the XML file.

Using the Connector

PeopleSoft connector is an operation-based connector, which means that when you add the connector to your flow, you need to configure a specific operation (Invoke operation) for the connector to perform. The XML element for the Invoke operation is peoplesoft:invoke-operation. After you call the Invoke operation, you can use the Type field to select a method that you want to execute on a particular Component Interface. PeopleSoft connector allows you to perform five standard operations (Create, Find, Get, Save, Cancel) on each Component Interface, along with any CI-specific custom operations.

Use Cases

Listed below are the most common use cases for the PeopleSoft connector:

  1. Polling records from PeopleSoft and writing them to a .CSV file.

  2. Polling records from a .CSV file and writing them to PeopleSoft.

Adding to a Flow

  1. Create a new Mule project in Anypoint Studio. If you prefer, you can also start a Maven-based project.

  2. Add a suitable Mule Inbound endpoint, such as the HTTP listener or File endpoint, to begin the flow.

  3. Search for and drag the PeopleSoft connector onto the canvas, then select it to open the properties editor.

  4. Configure the PeopleSoft connector’s parameters:

    configparameters

    Field Description

    Display Name

    Enter a unique label for the connector in your application.

    Connector Configuration

    Connect to a global element linked to this connector. Global elements encapsulate reusable data about the connection to the target resource or service. Select the global PeopleSoft connector element that you just created.

    Operation

    Select Invoke operation from the drop-down.

    Type

    Select the operation you want to perform on a particular Component Interface. The PeopleSoft Connector lets you execute five standard operations on each Component Interface along with any CI-specific custom operations:

    1. <Component Interface>#Create

    2. <Component Interface>#Find

    3. <Component Interface>#Get

    4. <Component Interface>#Save

    5. <Component Interface>#Cancel

    Params

    None: Select this option if the input parameters are not required for the operation.
    From Message: Select this option to define the operation based on the incoming payload. Create Object manually: Select this option to define the search values manually. Mule provides an editor to facilitate this task.

  5. Save your configurations. 

Example Use Case

Insert new position data from a .CSV file to PeopleSoft. 

Sampleflow

  1. Create a new Mule project in Anypoint Studio. If you prefer, you can also start a Maven-based project.

  2. Drag a File input endpoint into the canvas.

  3. On the Message Flow canvas, double-click the File icon to open the Properties pane.

  4. Configure the following File parameters:

    Field Value

    Display Name

    Employee-Position (or any other name you prefer)

    Path

    Navigate to the location of the file with Employee Position data.

    Polling Frequency

    1000 (or Specify how often the endpoint should check for incoming messages in milliseconds)

  5. Add a Foreach scope to the flow.

  6. Drag the PeopleSoft connector in the Foreach scope area, then configure it according to the steps below:

    1. Add a new PeopleSoft Global Element by clicking the plus sign next to the Connector Configuration field.

    2. Configure the global element according to the table below.

      Field Value

      Name

      Upsert data (or any other name you prefer)

      Server

      <URL of your PeopleSoft instance>

      Username

      <Your PeopleSoft username>

      Password

      <Your PeopleSoft Password>

    3. Click Test Connection to confirm that Mule can connect with the PeopleSoft instance. If the connection is successful, click OK to save the configurations. If unsuccessful, revise or correct any incorrect parameters, then test again.

    4. Back in the properties editor of the PeopleSoft connector, configure the remaining parameters according to the table below.

      Field Value

      Display Name

      Save Employee Position data to CI_Position_Data (or any other name you prefer)

      Config Reference

      PeopleSoft (Enter name of the global element you have created)

      Operation

      Invoke operation

      Type

      CI_POSITION_DATA#Save

      (CI_POSITION_DATA#Save)

      Params

      From Message #[payload]

  7. Add a DataMapper transformer between the File endpoint and the PeopleSoft connector to map the data in the File endpoint to the structure required by the PeopleSoft connector.

  8. Configure the Input properties of the DataMapper according to the steps below.

    1. In the Input type, select CSV, then provide the path for the CSV file.

    2. The Output properties are automatically configured to correspond to the PeopleSoft connector.

    3. Click Create Mapping

    4. Drag each input data field to its corresponding output PeopleSoft field.

    5. Click the blank space on the canvas to save the changes.

  9. Add a Logger scope right after the Data Mapper to print the data that is being passed to the PeopleSoft connector in the Mule Console. Configure the Logger according to the table below.

    Field Value

    Display Name

    Log Mapped CI_Position_Data (or any other name you prefer)

    Message

    Output from Datamapper is #[payload]

    Level

    INFO (Default)

  10. Add a Object To Json transformer after the PeopleSoft connector to convert the response from PeopleSoft after saving each record into JSON.

  11. Add a Logger to print the PeopleSoft response in the Mule Console. Configure the Logger according to the table below.

    Field Value

    Display Name

    Log Save Operation Response (or any other name you prefer)

    Message

    Response from Peoplesoft is: #[payload]

    Level

    INFO (Default)

  12. Finally, outside the Foreach scope, add a Logger to print a success message if all the data in the input file has been saved in PeopleSoft without errors. Configure it according to the table below.

    Field Value

    Display Name

    Saving Employee Data Complete (or any other name you prefer)

    Message

    Data transfer completed

    Level

    INFO (Default)

  13. Save and run the project as a Mule Application.

  1. Add a  peoplesoft:config global element to your project, then configure its attributes according to the table below.

    
           
                   
                
    1
    
    &lt;peoplesoft:config name="PeopleSoft" server="${mule.peoplesoft.server}" username="${mule.peoplesoft.username}" password="${mule.peoplesoft.password}" doc:name="PeopleSoft"&gt;
    Field Value

    name

    Upsert data (or any other name you prefer)

    server

    <URL of your PeopleSoft instance>

    username

    <Your PeopleSoft username>

    password

    <Your PeopleSoft Password>

    doc:name

    PeopleSoft

    Configure your People Component Interface in the Mule application. To do so, find the <peoplesoft:component-interface-ids-white-list ref="#[payload]"/> internal tag and replace it with the following:

    
           
                   
                
    1
    2
    3
    4
    5
    
    &lt;peoplesoft:component-interface-ids-white-list&gt;
    &lt;peoplesoft:component-interface-ids-white-list&gt;
    YOUR_COMPONENT_INTERFACE_NAME
    &lt;/peoplesoft:component-interface-ids-white-list&gt;
    &lt;/peoplesoft:component-interface-ids-white-list&gt;
  2. Begin the flow with a File endpoint, configuring the endpoint according to the table below. 

    
           
                   
                
    1
    
    &lt;file:inbound-endpoint path="src/test/resources" responseTimeout="10000" doc:name="employee-position.csv"&gt; &lt;file:filename-regex-filter pattern="employee-position.csv" caseSensitive="true"/&gt; &lt;/file:inbound-endpoint&gt;
    Attribute Value

    path

    Specify the location of the file with Employee Position data.

    responseTimeout

    1000 (how often the endpoint should check for incoming messages in milliseconds)

  3. Add a Data Mapper to the flow to map the data in the file to Position Data Component Interface.

    
           
                   
                
    1
    
    &lt;data-mapper:transform doc:name="Employee Position Data to CI_POSITION_DATA"/&gt;

    Leave the DataMapper without configuring for now, as it is easier to do so after the mapping’s destination is configured.

  4. Now, add <foreach doc:name="For Each"> to the flow. 

  5. Add the peoplesoft:invoke-operation element now to save the new employee position data to the Position Data Component Interface in your PeopleSoft instance.

    
           
                   
                
    1
    
    &lt;peoplesoft:invoke-operation config-ref="PeopleSoft" type="CI_POSITION_DATA#Save" doc:name="Save Employee Position Data to CI_POSITION_DATA"&gt; &lt;peoplesoft:params ref="#[payload]"/&gt; &lt;/peoplesoft:invoke-operation&gt;
    Attribute Value

    config-ref

    PeopleSoft

    type

    CI_POSITION_DATA#Save

    doc:name

    Save Employee Position Data to CI_POSITION_DATA

    In the Child Element peoplesoft:params include the following parameter:

    Child Element  

    ref

    #[payload]

  6. Add a json:object-to-json-transformer element to convert the response from PeopleSoft into a Json object, after each record in saved in PeopleSoft CI_POSITION_DATA. 

  7. Add a logger element to print the responses from PeopleSoft in Mule Console.

    
           
                   
                
    1
    
    &lt;logger message="Response from Peoplesoft is: #[payload]" level="INFO" doc:name="Logger"/&gt;
  8. Close the foreach scope, then add another logger element outside the foreach to print a message in the Studio Console after all the data in the file is saved in PeopleSoft.

    
           
                   
                
    1
    
    &lt;logger message="Data transfer completed." level="INFO" doc:name="Logger"/&gt;
  9. In order to to configure the DataMapper, you must switch Studio to the Visual Editor tab and click on the DataMapper to open its GUI.

    1. In the Input type, select CSV, then provide the path for the CSV file.

    2. The Output properties are automatically configured to correspond to the PeopleSoft connector.

    3. Click Create Mapping

    4. Drag each input data field to its corresponding output PeopleSoft field.

    5. Click the blank space on the canvas to save the changes.

  10. Return to the XML view in Studio. Add a logger element after the datamapper element to print the data that is being passed to PeopleSoft on the Studio Console.

    
           
                   
                
    1
    
    &lt;logger message="Output from Datamapper is #[payload]" level="INFO" doc:name="Logger"/&gt;
  11. Save and run the project as a Mule Application. 

Example Code


         
      
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
<mule xmlns:data-mapper="http://www.mulesoft.org/schema/mule/ee/data-mapper" xmlns:json="http://www.mulesoft.org/schema/mule/json" xmlns:file="http://www.mulesoft.org/schema/mule/file" xmlns:tracking="http://www.mulesoft.org/schema/mule/ee/tracking" xmlns:peoplesoft="http://www.mulesoft.org/schema/mule/peoplesoft" xmlns="http://www.mulesoft.org/schema/mule/core" xmlns:doc="http://www.mulesoft.org/schema/mule/documentation"
xmlns:spring="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-current.xsd
http://www.mulesoft.org/schema/mule/core http://www.mulesoft.org/schema/mule/core/current/mule.xsd
http://www.mulesoft.org/schema/mule/peoplesoft http://www.mulesoft.org/schema/mule/peoplesoft/current/mule-peoplesoft.xsd
http://www.mulesoft.org/schema/mule/file http://www.mulesoft.org/schema/mule/file/current/mule-file.xsd
http://www.mulesoft.org/schema/mule/ee/tracking http://www.mulesoft.org/schema/mule/ee/tracking/current/mule-tracking-ee.xsd
http://www.mulesoft.org/schema/mule/json http://www.mulesoft.org/schema/mule/json/current/mule-json.xsd
http://www.mulesoft.org/schema/mule/ee/data-mapper http://www.mulesoft.org/schema/mule/ee/data-mapper/current/mule-data-mapper.xsd">
    <peoplesoft:config name="PeopleSoft" server="${mule.peoplesoft.server}" username="${mule.peoplesoft.username}" password="${mule.peoplesoft.password}" doc:name="PeopleSoft" componentInterfaceInteractiveMode="${mule.peoplesoft.mode.interfacemode}" componentInterfaceEditHistoryItems="${mule.peoplesoft.mode.edithistoryitems}" componentInterfaceGetHistoryItems="${mule.peoplesoft.mode.gethistoryitems}">
        <peoplesoft:component-interface-ids-white-list>
        <peoplesoft:component-interface-ids-white-list>CI_POSITION_DATA</peoplesoft:component-interface-ids-white-list>
        </peoplesoft:component-interface-ids-white-list>
    </peoplesoft:config>
    <data-mapper:config name="Employee_Position_Data_to_CI_POSITION_DATA" transformationGraphPath="employee_position_data_to_ci_position_data.grf" doc:name="Employee_Position_Data_to_CI_POSITION_DATA"/>
    <asynchronous-processing-strategy name="Asynchronous_Processing_Strategy" maxThreads="5" minThreads="2" threadTTL="10" poolExhaustedAction="WAIT" doc:name="Asynchronous Processing Strategy"/>
    <flow name="Save_Employee_Position_Flow" doc:name="Save_Employee_Position_Flow">
        <file:inbound-endpoint path="input" responseTimeout="10000" doc:name="Read Employee Position Data" moveToDirectory="output">
            <file:filename-regex-filter pattern="employee-position.csv" caseSensitive="true"/>
        </file:inbound-endpoint>
        <data-mapper:transform config-ref="Employee_Position_Data_to_CI_POSITION_DATA" doc:name="Map Employee Position Data to CI_POSITION_DATA">
            <data-mapper:input-arguments>
                <data-mapper:input-argument key="GBI">GBI</data-mapper:input-argument>
                <data-mapper:input-argument key="Y">Y</data-mapper:input-argument>
                <data-mapper:input-argument key="USA">USA</data-mapper:input-argument>
                <data-mapper:input-argument key="N">N</data-mapper:input-argument>
                <data-mapper:input-argument key="STP">STP</data-mapper:input-argument>
                <data-mapper:input-argument key="C">C</data-mapper:input-argument>
                <data-mapper:input-argument key="A">A</data-mapper:input-argument>
                <data-mapper:input-argument key="I">I</data-mapper:input-argument>
            </data-mapper:input-arguments>
        </data-mapper:transform>
        <logger message="Mapped CI_POSITION_DATA : #[payload]" level="INFO" doc:name="Log mapped CI_POSITION_DATA "/>
        <foreach doc:name="For Each : Save Position Data Collection">
            <async doc:name="Async : Process each record concurrently" processingStrategy="Asynchronous_Processing_Strategy">
                <peoplesoft:invoke-operation config-ref="PeopleSoft" type="CI_POSITION_DATA#Save" doc:name="Save Employee Position Data to CI_POSITION_DATA">
                    <peoplesoft:params ref="#[payload]"/>
                </peoplesoft:invoke-operation>
                <json:object-to-json-transformer doc:name="Convert payload Object to JSON"/>
                <logger message="Response from Peoplesoft is: #[payload]" level="INFO" doc:name="Log Save Operation Response"/>
            </async>
        </foreach>
        <logger message="Data transfer completed." level="INFO" doc:name="Saving Employee Data Complete"/>
    </flow>
</mule>

See Also

  1. Learn more about working with Anypoint Connectors.

  2. Access PeopleSoft connector release notes.

  3. Learn how to use Maven with Mule.