Step 2: Creating Local and Error Event Subscriptions to the Invoker Event

Create a Local Subscription With 'Invoke Web Service' Action Type

To subscribe to an invoker event, you must create a subscription with 'Invoke Web Service' Action Type which indicates that when a triggering event occurs, the action item of this subscription is to invoke a Web service. This requires you to enter a WSDL URL representing a Web service of any type (such as a native Web service or BPEL process) in the Create Event Subscription - Invoke Web Service wizard. That WSDL information entered in the wizard will be parsed into service metadata for further selections.

Note: A BPEL process itself is a Web service, defining and supporting a client interface through WSDL and SOAP. The BPEL process WSDL URL can be created through a partner link which allows the request to be published to Oracle SOA Suite to connect to Web services.

When a triggering event occurs, the Business Event System executes the subscription through the seeded Java function and invokes the BPEL process.

After you select appropriate service metadata, this selected data will be stored as subscription parameters as follows and displayed in the Web Service Details region:

The seeded Java Rule Function oracle.apps.fnd.wf.bes.WebServiceInvokerSubscription uses these subscription parameters during the service invocation.

Note: Oracle E-Business Suite Integrated SOA Gateway allows developers to extend the invoker subscription seeded rule function using Java coding standards for more specialized service invocation processing. For more information on customizing seeded Java rule function, see Extending Seeded Rule Function.

Configuring Web Service Security

If the Web service being invoked enforces Username/Password based authentication, then the Service Invocation Framework also supports the UsernameToken based WS-Security header during Web service invocation.

Attention: This UsernameToken based WS-security header is implemented during the service invocation only if the Web service provider that processes the Web service request needs this security header.

After entering needed information in the Create Event Subscription - Invoke Web Service wizard, the Web Service Security region is displayed letting you specify or update username and password information if appropriate. The information will then be stored in Vault securely.

Please note that Oracle Workflow allows various levels of updates on business event and subscription based on the customization level. If the Invoke Web Service event subscription's customization level is Core or Limit, and if the username is supplied by the subscription owner, it cannot be updated. If the username was not already supplied, you can update a username if required. Password can always be updated regardless of the customization level if it is required.

For more information on how to configure security fields with customization level, see:

For more information about Web service security, see Supporting WS-Security.

Setting Additional Subscription Parameters

Apart from the subscription parameters that have been parsed and stored through the Invoke Web Service Subscription page, the following information could be captured if it is specified as additional subscription parameters that will then be used by the seeded Java rule function to enable message processing for Web service invocation:

Creating a Local Event Subscription with 'Invoke Web Service' Action Type

To create a local event subscription with 'Invoke Web Service' action type:

  1. Log in to Oracle E-Business Suite as a user who has the Workflow Administrator Web responsibility. Select the Business Events link, and choose Subscriptions in the horizontal navigation.

  2. In the Event Subscriptions page, click Create Subscription to open the Create Event Subscription page.

  3. Enter the following information in the Create Event Subscription page:

  4. Click Next. This opens a Create Event Subscription - Invoke Web Service wizard allowing you to enter a WSDL URL that will be parsed into service metadata for further selection.

    1. Enter WSDL URL information for the Web service to be invoked. Click Next to parse the WSDL and display all services.

    2. Select an appropriate service name from the drop-down list. Click Next to display all ports for a selected service

    3. Select an appropriate service port and click Next to display all operations for a selected port.

    4. Select an appropriate service operation and click Next. This opens the last page of the Create Event Subscription - Invoke Web Service wizard.

    5. All the selected service metadata information is automatically displayed in the Web Service Details region.

    6. In the Web Service Security region, enter Username and Password information if appropriate.

      Please note that Oracle Workflow allows various levels of updates on business event and subscription based on the customization level. If the Invoke Web Service event subscription's customization level is Core or Limit, and if the username is supplied by the subscription owner, it cannot be updated. If the username was not already supplied, you can update a username if it's required. Password can always be updated regardless of the customization level if it is required.

      For more information, see Configuring Security Password with Customization Level.

    7. In the Web Service Invoker region, the default Java Rule Function name oracle.apps.fnd.wf.bes.WebServiceInvokerSubscription is automatically populated.

      Attention: If you have extended the functionality of the seeded rule function, manually enter your custom function name here.

    8. In the Documentation region, enter an application name or a program name that owns the subscription (such as 'Oracle Workflow') in the Owner Name field. Enter the program ID (such as 'FND') in the Owner Tag field. Click Apply.

For more information, see Defining Event Subscriptions, Oracle Workflow Developer's Guide.

Create an Error subscription with 'Launch Workflow' Action Type

To enable the error processing feature during the service invocation, you must create an Error subscription to the invoker business event.

Once subscribing to this error processing, if any errors occurred during the invocation, the error process sends a workflow notification to SYSADMIN. This information includes Web service definition, event details, and error details allowing SYSADMIN to easily identify the error. The notification also provides an option for SYSADMIN to respond to the error. The SYSADMIN can invoke the Web service again after the underlying issue that caused the error is resolved, abort the errored event if needed, or reassign an errored notification to another user if appropriate.

For detailed information on managing errors during Web service invocation, see Managing Errors.

To create an error subscription with 'Launch Workflow' action type:

  1. Log in to Oracle E-Business Suite as a user who has the Workflow Administrator Web responsibility. Select the Business Events link, and choose Subscriptions in the horizontal navigation.

  2. In the Event Subscriptions page, click Create Subscription to open the Create Event Subscription page.

  3. Enter the following information in the Create Event Subscription page:

  4. Click Next to open the Create Event Subscription - Launch Workflow page.

  5. Enter the following information in the Action region:

  6. In the Documentation region, enter an application or program name that owns the event subscription (such as Oracle Workflow) in the Owner Name field and application or program ID (such as 'FND') in the Owner Tag field.

  7. Click Apply.