Skip Headers
Oracle® Application Server Adapter for PeopleSoft User's Guide
10g Release 3 (10.1.3.4.0)

Part Number E14198-01
Go to Documentation Home
Home
Go to Book List
Book List
Go to Table of Contents
Contents
Go to Index
Index
Go to Feedback page
Contact Us

Go to previous page
Previous
Go to next page
Next
View PDF

4 Integration with Oracle BPEL Process Manager

OracleAS Adapter for PeopleSoft integrates seamlessly with Oracle Business Process Execution Language (BPEL) Process Manager to facilitate Web service integration. Oracle BPEL Process Manager is based on the Service-Oriented Architecture (SOA). It consumes adapter services exposed as Web Service Definition Language (WSDL) documents.

This chapter includes the following topics:

Overview of Adapter Integration with Oracle BPEL Process Manager

To integrate with Oracle BPEL Process Manager, OracleAS Adapter for PeopleSoft must be deployed in the same OC4J container as Oracle BPEL Process Manager. The underlying adapter services must be exposed as WSDL files, which are generated during design time in Oracle Application Server Adapter Application Explorer (Application Explorer) for both request-response (outbound) and event notification (inbound) services of the adapter. See "Generating WSDL (J2CA Configurations Only)" for more information.

The generated WSDL files are used to design the appropriate BPEL processes for inbound or outbound adapter services. A completed BPEL process must be successfully compiled in JDeveloper and deployed to a BPEL server. Upon deployment to the BPEL server, every newly built process is automatically deployed to the Oracle BPEL Console, where you run, monitor, and administer BPEL processes, and listen to adapter events.

When using the adapter with Oracle BPEL Process Manager, the BPEL PM home directory is OC4J_BPEL, and is located as follows:

OracleAS_home\j2ee\OC4J_SOA

See Also:

  • Oracle Application Server Adapter Concepts

  • Oracle BPEL Process Manager Developer's Guide

Deployment of Adapter

During installation, OracleAS Adapter for PeopleSoft is deployed as a J2CA 1.0 resource adapter within the OC4J J2CA container. The adapter must be deployed in the same OC4J container as Oracle BPEL Process Manager.

See Also:

Oracle Application Server Adapter Concepts

Design Time

The following tools are required to complete your adapter design-time configuration:

Note:

The examples in this chapter demonstrate the use of JDeveloper.

Before you design a BPEL process, you must create a schema and generate the respective WSDL file using Application Explorer. See "Generating WSDL (J2CA Configurations Only)" for more information.

Namespace Requirements

The purpose of an XML namespace is to allow the deployment of XML vocabularies (where element and attribute names are defined) in a global environment and to reduce the risk of name collisions in a given document when vocabularies are combined. Qualified namespaces are used for stricter schema validation. In documents conforming to this specification, element and attribute names appear as qualified names. Syntactically, they are either prefixed names or unprefixed names. An attribute-based declaration syntax is provided to bind prefixes to namespace names and to bind a default namespace that applies to unprefixed element names. These declarations are scoped by the elements on which they appear so that different bindings may apply in different parts of a document. Processors conforming to this specification must recognize and act on these declarations and prefixes.

In the 10.1.3.1.0 SOA release, the recommendations for BPEL integrations is to perform stricter name space validations. As a result, Application Explorer generates Web services for the back-end with the namespace marked as “Qualified”. During testing or usage phases of this service by BPEL, the request XML document that is used should adhere to the schema and WSDL document. Once again, it is important to remember that the namespaces are qualified. To further understand this point, the difference is illustrated with the following example:

  1. Input XML for BPEL based on unqualified namespaces:

    <?xml version="1.0" encoding="UTF-8"?><PS8>    <component perform="browse">LOCATION</component>    <key name="Setid">SHARE</key>    <key name="Location">ALBERTA</key> </PS8>
    
  2. Input XML for BPEL based on qualified namespaces:

    <PS8 xmlns="urn:iwaysoftware:adapter:peoplesoft:ci">  <component perform="find">LOCATION</component>  <key name="Setid">SHARE</key>  <key name="Location">ALBERTA</key></PS8>
    

Note: If you are passing an unqualified input against a WSDL document that is expecting qualified namespaces, BPEL will throw the exception as “Unable to process input xml...."

Design a BPEL Process for Request-Response Service (Outbound)

An outbound BPEL process consists of PartnerLink, Invoke, and Assign process activities. You must first create a new Application Server connection, Integration Server connection, and a synchronous BPEL process template.

Create a New Application Server Connection

To create a new Application Server connection:

  1. Display the connections by clicking the Connections Navigator tab at the top of the upper left pane in JDeveloper.

    Connections window
    Description of the illustration bpel_30.gif

  2. Right-click Application Server and select New Application Server Connection.

    The Create Application Server Connection - Welcome dialog box is displayed.

  3. Click Next.

    The Create Application Server Connection - Step 1 of 4: Type dialog box is displayed.

    Application Server Connection Wizard
    Description of the illustration bpel_32.gif

  4. Specify a unique name and select a connection type for your Application Server connection and click Next.

    The Create Application Server Connection - Step 2 of 4: Authentication dialog box is displayed.

    Specify authentication information
    Description of the illustration bpel_33.gif

  5. Specify a valid user name and password for the Application Server you want to connect to.

  6. Select Deploy Password.

  7. Click Next.

    The Create Application Server Connection - Step 3 of 4: Connection dialog box is displayed.

    Specify connection information
    Description of the illustration bpel_33a.gif

  8. Select the Single Instance connection option.

  9. Enter localhost as the host name and 6003 for the OPMN port.

  10. Enter home as the OC4J instance name

  11. Click Next.

    The Create Application Server Connection - Step 4 of 4: Test dialog box is displayed

    Testing the connection
    Description of the illustration bpel_33b.gif

  12. Click Test Connection.

    When the test is complete and the connection is successful, a Success! message appears in the status area.

  13. Click Finish.

    Your newly created Application Server connection is displayed in the Connections Navigator tab under the Application Server node.

    Application Server connection added
    Description of the illustration bpel_34.gif

Create a New Integration Server Connection

To create a new Integration Server connection:

  1. Display the connections by clicking the Connections Navigator tab at the top of the upper left pane in JDeveloper.

    Connections window
    Description of the illustration bpel_int1.gif

  2. Right-click Integration Server and select New Integration Server Connection.

    The Create Integration Server Connection - Welcome dialog box is displayed.

  3. Click Next.

    The Create Integration Server Connection - Step 1 of 3: Name dialog box is displayed.

    Integration Server Connection Wizard
    Description of the illustration bpel_int2.gif

  4. Specify a unique name and click Next.

    The Create Integration Server Connection - Step 2 of 3: Connection dialog box is displayed.

    Specify connection information
    Description of the illustration bpel_int3.gif

  5. Select an Application Server connection, which is already created.

  6. Enter localhost as the host name and 8888 for the port number.

  7. Select Add host name to the list of proxy exceptions and click Next.

    The Create Integration Server Connection - Step 3 of 3: Test Connection dialog box is displayed.

    Test the connection
    Description of the illustration bpel_int4.gif

  8. Click Test Connection.

    When the test is complete and the connection is successful, a Success! message appears in the status area.

  9. Click Finish.

    Your newly created Integration Server connection is displayed in the Connections Navigator tab under the Integration Server node.

    Integration Server connection added
    Description of the illustration bpel_int5.gif

Testing Outbound BPEL and ESB Processes

The BPEL console enables the testing of deployed BPEL processes. Once a process is deployed, you can manage, monitor, and run an end-to-end scenario using the Initiate tab in the console. The OracleAS Adapter for PeopleSoft is certified for testing using the XML Payload option and the option of running using Through Java Delivery API. It is recommended that developers use this method for testing the OracleAS Adapter for PeopleSoft.

When testing an outbound BPEL process from the BPEL console or an outbound ESB process from the Enterprise Manager console, do not use the XML envelopes that are generated by these consoles. Instead, remove them and use the XML payloads that are generated from the schemas, which conform to the WSDLs for namespace qualifications.

The ESB data flows can be tested using the Enterprise Manager console. When creating an ESB data flow and interactions, the Web services are created and registered with the Oracle Application Server. For more information on creating an ESB outbound process, see Chapter 5, "ESB Integration Examples".

PeopleSoft Service Integration

This topic illustrates PeopleSoft service integration. Design-time and run-time configuration is described.

Design-Time Configuration

Before you design a process for PeopleSoft service integration, you must generate its respective WSDL file using Application Explorer.

Generating WSDL for a Request-Response J2CA Service

To generate WSDL for outbound interaction in Application Explorer:

  1. Start Application Explorer and connect to a defined PeopleSoft target or create a new target.

    See "Defining a Target to PeopleSoft" for more information.

  2. Expand the PeopleSoft target to which you are connected.

  3. Expand Component Interfaces and select LOCATION.

  4. Right-click LOCATION.

    The following menu is displayed:

    Export WSDL dialog box
    Description of the illustration wlae_exportwsdl.gif

  5. Click Create Outbound JCA Service (Request/Response).

    The Export WSDL dialog box is displayed.

    Export WSDL dialog box
    Description of the illustration bpel_41.gif

  6. Click OK.

You are ready to design a BPEL process in JDeveloper.

Creating a BPEL PM Server Connection

Before you design an outbound BPEL process, you must configure a new Application Server and Integration Server connection in Oracle JDeveloper. For more information, see Chapter 4, "Integration with Oracle BPEL Process Manager".

Creating a BPEL Project for a Synchronous BPEL Process

To create a BPEL Project for a synchronous BPEL process:

  1. At the top of the upper left pane, click the Applications Navigator tab and select an application. If an application does not exist, then you must create an application.

    New Project
    Description of the illustration bpel_34a.gif

  2. Right-click the application and select New Project.

    The New Gallery window is displayed.

    New Gallery dialog box
    Description of the illustration bpel_1.gif

  3. From the Items list, select BPEL Process Project and click OK.

    The BPEL Process Project dialog box is displayed.

    BPEL Process Project dialog box
    Description of the illustration bpel_2a.gif

  4. Perform the following steps:

    1. Specify a name for the BPEL process.

      The Namespace field is updated automatically.

    2. From the Template list, select Synchronous BPEL Process.

  5. Click OK.

Designing the BPEL Process for the LOCATION Outbound Service

To design the BPEL Process:

  1. From the Services pane on the right, drag and drop a PartnerLink to the visual editor.

    The Create Partner Link dialog box is displayed.

    Create Partner Link dialog box
    Description of the illustration bpel_4.gif

  2. Click the Service Explorer icon (second icon from the left preceding the WSDL File field).

    The Service Explorer dialog box is displayed.

    Service Explorer dialog box
    Description of the illustration bpel_5.gif

  3. Expand your new connection under Adapter Services, followed by adapters, and then applications.

    The WSDL tree displayed in the Service Explorer dialog box lists any WSDL files you have created using Application Explorer. The WSDL tree is generated by a WSDL servlet, which is automatically deployed as part of the BPEL Server installation.

    Service Explorer dialog box
    Description of the illustration bpel_6a.gif

  4. Select LOCATION_invoke.wsdl and click OK.

    The WSDL File field in the Create Partner Link dialog box displays the name and location of the selected WSDL file. The Partner Link Type field specifies the PartnerLink defined in the WSDL file.

    Create Partner Link
    Description of the illustration bpel_7.gif

    Perform the following steps:

    1. Leave the My Role field unspecified. The role of the PartnerLink is null, as it will be synchronously invoked from the BPEL process.

    2. From the Partner Role list, select the default value LOCATIONRole. This is the role of the BPEL process.

  5. Click OK.

    The new PartnerLink appears in the visual editor.

  6. Select Save from the File menu.

  7. From the Process Activities pane on the right, drag an Invoke activity to the visual editor and place it between the Receive activity (receiveInput) and the Reply activity (replyOutput).

    The Invoke process activity is shown in the following diagram view.

    Diagram view showing Invoke process activity
    Description of the illustration bpel_42.gif

  8. Drag the blue arrow from Invoke_1 and connect it to the PeopleSoft PartnerLink.

    The Edit Invoke dialog box is displayed.

    Edit Invoke dialog box
    Description of the illustration bpel_43.gif

    Perform the following steps:

    1. Click the first icon to the right of the Input Variable field, then click OK in the Create Variable window that is displayed.

    2. Repeat the previous step to create a default variable for Output Variable.

  9. Click OK.

  10. Drag an Assign process activity and drop it between receiveInput and Invoke_1.

    The following image shows the new Assign activity in JDeveloper visual editor.

    JDeveloper diagram view showing new process activities
    Description of the illustration bpel_44.gif

  11. Double-click the Assign activity icon.

    The Assign dialog box is displayed.

    Assign dialog box
    Description of the illustration bpel_14.gif

  12. In the Copy Operation tab, click Create and select Copy Operation.

    The Create Copy Operation dialog box is displayed. Perform the following steps:

    1. In the From pane, expand Variables, then inputVariable, and then highlight payload.

    2. In the To pane, expand Variables, then Invoke_1_LOCATION_InputVariable, and then highlight input_LOCATION.

    Your Create Copy Operation dialog box should look as follows:

    Create Copy Operation dialog box
    Description of the illustration bpel_10a.gif

  13. To close the Create Copy Operation dialog box and the Assign dialog box, click OK.

  14. From the Process Activities pane on the right, drag another Assign activity to the visual editor and place it between the Invoke activity (Invoke_1) and the Reply activity (replyOutput).

  15. Double-click the Assign activity icon and click Create.

  16. In the Create Copy Operation dialog box, map Invoke_1_LOCATION_OutputVariable, output_LOCATION to outputVariable, payload.

    Verify that you have mapped all variables as follows:

    Create Copy Operation dialog box
    Description of the illustration bpel_10b.gif

  17. Click OK, then click OK again.

  18. Select Save from the File menu.

You have completed the design of your BPEL process.

Deploying the BPEL Process for the LOCATION Outbound Service

JDeveloper deploys the outbound BPEL process directly to Oracle BPEL Console.

To deploy your BPEL process in JDeveloper:

  1. Right-click your project in the Applications Navigator tab.

  2. Select Deploy, then Your BPEL PM Server connection, and then Deploy to default domain.

    The deployment process starts automatically.

  3. Observe the Messages log at the bottom of the window.

    The Messages log displays the deployment status. In this example, it shows a successful deployment message for the process.

    JDeveloper Messages log
    Description of the illustration bpel_16.gif

    If deployment was not successful, click the Compiler tab to view all error and warning messages generated during the deployment process.

Invoking Adapter Request-Response Service from Oracle BPEL Process Manager

The OracleAS Adapter for PeopleSoft request-response service is used to create, delete, update, query back-end data, and to call back-end workflows and transactions. The following section describes how to invoke the adapter synchronous request-response service, also referred to as Outbound Interaction, and how to manage the process in Oracle BPEL Console.

Manage the Deployed Outbound Process in Oracle BPEL Console

JDeveloper deploys the developed process directly to the Oracle BPEL Console, which enables you to run, monitor, and administer BPEL processes.

To invoke adapter request-response service:

  1. Start the Oracle BPEL Console by entering the following URL in a browser:

    http://host:port/BPELConsole
    
  2. Select a domain and provide a valid password.

    The Oracle BPEL Console main page is displayed. All deployed BPEL processes are listed in the Dashboard tab.

    Oracle BPEL Console
    Description of the illustration bpel_17.gif

  3. Click the BPEL Processes tab.

    This tab provides a more detailed view of each deployed process.

    BPEL Processes tab
    Description of the illustration bpel_18.gif

  4. Click the PeopleSoft process link, PSFT_outbound_location_invoke (v. 1.0).

    The Manage window provides options for managing this BPEL process. Do not change any of the following default settings.

    Oracle BPEL Console Manage tab
    Description of the illustration bpel_19.gif

  5. Click the Initiate tab.

    The Initiate tab enables you to test your BPEL process.

    Oracle BPEL Console Initiate window
    Description of the illustration bpel_20.gif

    Perform the following steps:

    1. From the Initiating a test instance list, select XML Source.

    2. Select the Java through delivery API link in the right side of the test area.

    3. Enter the following code in the text area provided for XML input:

      <?xml version="1.0" encoding="UTF-8"?>
      <PS8 SERVICENAME="LOCATION" METHODNAME="LOCATION" LICENSE="test">     <component perform="browse">LOCATION</component>     <key name="SETID">SHARE</key>     <key name="LOCATION">ALBERTA</key></PS8>
      
  6. Click Post XML Message.

    The response received from the PeopleSoft system is displayed in the Initiate window.

See Also:

Oracle Application Server Adapter Concepts

PeopleSoft Event Integration

This topic illustrates PeopleSoft event integration. Design-time and run-time configuration is described.

Design-Time Configuration

You must create a separate channel for every event and select that channel when you generate WSDL for inbound interaction using Application Explorer.

Note:

If two or more events share the same channel, event messages may not be delivered to the right BPEL process.

Creating a Channel

To create a channel:

  1. Click the Events node.

  2. Expand the PeopleSoft node.

    The ports and channels nodes appear in the left pane.

    Add Channel in Application Explorer
    Description of the illustration addchannel.gif

  3. Right-click Channels and select Add Channel.

    The Add Channel dialog box is displayed.

    Add Channel dialog box
    Description of the illustration addchannel_2.gif

    Provide the following information:

    1. Enter a name for the channel, for example, PSFT_Channel.

    2. Enter a brief description (optional).

    3. From the Protocol list, select HTTP Listener.

  4. Click Next.

  5. When the Basic dialog box is displayed, enter the system information as specified in the following table:

    Parameter Description
    Listener port Port on which to listen for PeopleSoft event data.
    Https For a secure HTTP connection, select the Https check box.
    Synchronization Type Choose from the following synchronization options:
    • REQUEST_RESPONSE

    • REQUEST_ACK

    Important: The PeopleSoft channel will not work if the synchronization type is set to REQUEST.


  6. Click OK.

    The channel appears under the channels node in the left pane. An X over the icon indicates that the channel is currently disconnected.

    Note:

    Do not start the channel, as it is managed by BPEL PM Server. If you start the channel for testing and debugging purposes, stop it before run-time.

Generating WSDL for Event Notification

After you create a channel and verify that it is not started, you must generate WSDL for the event using Application Explorer.

  1. Start Application Explorer.

  2. Expand the Adapters node.

    A list of all available adapters is displayed.

  3. Expand PeopleSoft.

  4. Click a target name under the PeopleSoft node, for example, PSFTtarget.

    The Logon pane on the right displays the saved parameters.

  5. Verify your connection parameters and provide the required password.

  6. Right-click the target name and select Connect.

    The x icon disappears, indicating that the target is connected.

    Connected to target in AE
    Description of the illustration select_psft.gif

  7. Expand Messages and select LOCATION_SYNC.VERSION_1.

  8. Right-click LOCATION_SYNC.VERSION_1.

    First step of creating WSDL
    Description of the illustration bpel_38.gif

  9. Select Create Inbound JCA Service (Event).

    The Export WSDL dialog box is displayed.

    Export WSDL dialog box
    Description of the illustration bpel_39.gif

    Perform the following steps:

    1. In the Name field, specify the name of the WSDL file.

    2. Ensure that qualified is selected as the element form, which is the default.

    3. From the Channel drop-down list, select the channel you created for this inbound service.

      Important: You must create a separate channel for every event. Verify that the channel is stopped before run-time.

  10. Click OK.

Creating a BPEL PM Server Connection

Before you design a BPEL process using the WSDL you generated in Application Explorer, you must configure a new Application Server and Integration Server connection in Oracle JDeveloper. For more information, see Chapter 4, "Integration with Oracle BPEL Process Manager".

Designing the BPEL Process for the LOCATION_SYNC.VERSION_1 Inbound Service

To design a BPEL process for inbound interaction:

  1. At the top of the upper left pane, click the Applications Navigator tab and select an application.

    New Project
    Description of the illustration bpel_34a.gif

  2. Right-click the application and select New Project.

    The New Gallery dialog box is displayed.

    New Gallery dialog box
    Description of the illustration bpel_1.gif

  3. From the Items list, select BPEL Process Project and click OK.

    The BPEL Process Project dialog box is displayed.

    BPEL Process Project dialog box
    Description of the illustration bpel_22a.gif

  4. Perform the following steps:

    1. Specify a name for the project, for example, PSoftTLOCATION_inbound.

      The Namespace field is updated automatically.

    2. From the Template list, select Empty BPEL Process.

    3. Click OK.

  5. From the Services pane on the right, drag and drop a PartnerLink to the visual editor.

    The Create Partner Link dialog box is displayed.

    Create PartnerLink dialog box
    Description of the illustration bpel_4.gif

  6. Click the Service Explorer icon (second icon from the left preceding the WSDL File field).

    The Service Explorer dialog box is displayed.

    Service Explorer dialog box
    Description of the illustration bpel_5.gif

  7. Expand your new connection, then expand adapters, and then applications.

    The WSDL tree displays the WSDL files you created using Application Explorer. The WSDL tree is generated by a WSDL servlet, which is automatically deployed as part of the BPEL Server installation.

    Service Explorer dialog box
    Description of the illustration bpel_6b.gif

  8. Select LOCATION_SYNC.VERSION_1_receive.wsdl and click OK.

    The Create Partner Link dialog box is displayed.

    New completed Partner Link
    Description of the illustration bpel_24a.gif

    The WSDL File field displays the name and location of the selected WSDL file. The Partner Link Type field specifies the PartnerLink defined in the WSDL file.

    Perform the following steps:

    1. From the My Role list, select the default value LOCATION_SYNC.VERSION_1Role.

    2. Leave the Partner Role field unspecified.

  9. Click Apply, and then OK.

    The new PSFT_PL1 PartnerLink appears in the visual editor.

    New PartnerLink appears in visual editor
    Description of the illustration bpel_25a.gif

  10. From the Process Activities pane on the right, drag a Receive activity to the visual editor and place it in the designated placeholder labeled Drop Activity Here.

  11. Connect the Receive activity to the PSoft_PL1 PartnerLink.

    The Edit Receive dialog box is displayed.

    Edit Receive dialog box
    Description of the illustration bpel_26a.gif

    Perform the following steps:

    1. Specify a name for the Receive Activity, for example, Receive_LOCATION.

    2. Click the first icon to the right of the Variable field, then click OK in the Create Variable dialog box that is displayed.

    3. Verify that the Create Instance check box is selected.

  12. Click Apply.

    The Receive dialog box should no longer display any warnings or errors.

  13. Click OK.

  14. Select Save from the File menu.

Deploying the BPEL Process for the LOCATION_SYNC.VERSION_1 Inbound Service

  1. Right-click your project in the Applications Navigator tab.

  2. Select Deploy, then Your BPEL PM Server connection, and then Deploy to default domain.

    The deployment process starts automatically.

Runtime Configuration

The following topics describe how to trigger an event in PeopleSoft and verify event integration using OracleAS Adapter for PeopleSoft.

Triggering an Event in PeopleSoft to Test Event Runtime Integration

To trigger an event in PeopleSoft:

  1. Log in to PeopleSoft, select PeopleTools, Integration Broker, and then Node Definitions.

    PeopleTools Nodes Definitions window
    Description of the illustration node_definitions.gif

  2. Enter the node name you will be using, for example, EXTERNAL; then click Search.

    Connectors tab
    Description of the illustration node_info.gif

  3. Click the Connectors tab.

    Connectors tab
    Description of the illustration http_target.gif

  4. Enter HTTPTARGET in the Connector ID field; then enter the listener URL and its port in the PRIMARYURL field.

  5. To save the configuration, click Save.

    PeopleSoft location pane
    Description of the illustration peoplesoft_share.gif

  6. From Menu in the left pane, select Set Up Financials/Supply Chain, Common Definitions, Location, and then Location.

    Location Definition tab
    Description of the illustration location_definition.gif

  7. To find the location record you want to update, click Search; then make the changes and click Save.

    When the change is saved, it triggers an event and sends the event to the listener.

Verifying the Results

To verify your results:

  1. Log in to Oracle BPEL Console at

    http://host:port/BPELConsole 
    
  2. Provide a valid user name and password.

  3. Click the Instances tab.

    Recently received run-time events are displayed in the Instances tab.

    BPEL Console Instances tab
    Description of the illustration bpel_36.gif

  4. Click an instance, then click Audit to see the received event message.