19
ORACLE SUPPORT SERVICES ORACLE E-Business Suite (EBS) 12.1 Integrated SOA Gateway (ISG) Invoking an External Web Service Using the Service Invocation Framework (SIF) Prepared by: Gary Grant Author: Gary Grant Creation Date: Thursday, November 05, 2009 Last Updated: Monday, March 15, 2010 Definition: This is an example of how to obtain information from an external source using a published web service using ISG in EBS. Method: The web service will be invoked (launched) from a workflow process. Oracle Workflow is a mature product with a large number of experienced Developers. This allows ISG to be easily understood if it is presented in the context of being integrated into a workflow process. The Service Invocation Framework (SIF) is an enhancement to the Business Event System (BES) with the introduction of seeded web service subscriptions and additional User Interfaces (UI) for specifying the location of the Web Service Definition Language (WSDL) that has been deployed by companies that for others to subscribe and use. Proxy Setup: In order to point to an external URL containing a WSDL, you need to be able to connect through Oracle‟s proxy. Update the autoconfig Applications Tier $CONTEXT_FILE with the proxyhost and proxyport. Login to E-Business as a user assigned the System Administrator responsibility and navigate:

ISG Example External1

Embed Size (px)

Citation preview

Page 1: ISG Example External1

ORACLE SUPPORT SERVICES

ORACLE E-Business Suite (EBS) 12.1 Integrated SOA Gateway (ISG)

Invoking an External Web Service

Using the Service Invocation Framework (SIF)

Prepared by: Gary Grant

Author: Gary Grant

Creation Date: Thursday, November 05, 2009

Last Updated: Monday, March 15, 2010

Definition:

This is an example of how to obtain information from an external source using a published web

service using ISG in EBS.

Method:

The web service will be invoked (launched) from a workflow process. Oracle Workflow is a

mature product with a large number of experienced Developers. This allows ISG to be easily

understood if it is presented in the context of being integrated into a workflow process. The

Service Invocation Framework (SIF) is an enhancement to the Business Event System (BES)

with the introduction of seeded web service subscriptions and additional User Interfaces (UI) for

specifying the location of the Web Service Definition Language (WSDL) that has been deployed

by companies that for others to subscribe and use.

Proxy Setup:

In order to point to an external URL containing a WSDL, you need to be able to connect through

Oracle‟s proxy. Update the autoconfig Applications Tier $CONTEXT_FILE with the proxyhost

and proxyport.

Login to E-Business as a user assigned the System Administrator responsibility and navigate:

Page 2: ISG Example External1

System Administrator > Oracle Applications Manager > AutoConfig

In Applications click Edit Parameters

oacore and oafm oc4j.properties

Query OA_VAR = proxy

s_proxyhost= www-proxy.us.oracle.com s_proxyport= 80

Concurrent Manager Node running Workflow Services adovars.env

Query OA_VAR = s_appsjreopts

s_appsjreopts= -Dhttp.proxyHost=www-proxy.us.oracle.com -Dhttp.proxyPort=80

Run autoconfig:

sh $ADMIN_SCRIPTS_HOME/adautocfg.sh

Shutdown and restart the Web Server components:

sh $ADMIN_SCRIPTS_HOME/adstpall.sh sh $ADMIN_SCRIPTS_HOME/adstrtal.sh

Business Event (SIF) Setup:

The Business Event System menu UI has been enhanced to enable a web service to be defined

and invoked from the UI. A seeded “Invoke Web Service” Action Type has been created for a

Local Java Subscription that will invoke the web service. A new WFERROR Process

Subscription “DEFAULT_EVENT_ERROR2” has been created and must be added to the event

defined to invoke the web service.

The Local Java Subscription with the seeded “Invoke Web Service” Action Type will include the

following parameters to invoke the web service:

SERVICE_WSDL_URL - The URL where the Web Services Description Language

(WSDL) description for the Web service is located. If the Web service is a BPEL

process, you can specify the path of the WSDL description on the BPEL server.

SERVICE_NAME - The name of the Web service.

SERVICE_PORTTYPE - The port type, or set of abstract operations, that includes the

operation to invoke.

SERVICE_OPERATION - The operation to invoke.

Page 3: ISG Example External1

SERVICE_PORT - A single communication endpoint defined by a combination of a

network address and a binding. The binding specifies concrete protocol and data format

specifications for the operations and messages defined by the port type.

SIF Demo:

Business Event SIF UI:

This demonstration will show how to a workflow can be used to invoke a web service and

retrieve information from an external Internet site. This is a demo created by Vijay Workflow

Development Product Manager.

Workflow Administrator Web Applications > Business Events

Create „oracle.apps.wf.movie.invoke‟ event.

Page 4: ISG Example External1

Add Subscriptions to the „oracle.apps.wf.movie.invoke‟ event.

Create Local Java Subscription to use seeded “Invoke Web Service” Action Type.

Page 5: ISG Example External1

Click Next to add the WSDL URL to be invoked.

NOTE: The following are all contained in the WSDL and can be obtained by using the WSDL

URL in a web browser to see the definition.

Page 6: ISG Example External1

Click Next to add the WSDL Service Name.

Page 7: ISG Example External1

Click Next to add WSDL Service Port.

Page 8: ISG Example External1

Click Next to add WSDL Operation, Port Type and Operation Response.

Page 9: ISG Example External1

Click Next to add “oracle.apps.fnd.wf.bes.WebServiceInvokerSubscription” Java Rule Function

and the Optional Callback Parameters so the result of the web service invocation will be retruned

back.

WFBES_CALLBACK_EVENT – receive event

WFBES_CALLBACK_AGENT – WF_WS_JMS_IN or any other Inbound Queue

Page 10: ISG Example External1

Create a Workflow Error Subscription to capture web service invocation failures.

Page 11: ISG Example External1

The workflow error subscription will call item_type= WFERROR and workflow process=

DEFAULT_EVENT_ERROR2.

Page 12: ISG Example External1

The SIF invocation demo now contains 2 subscriptions.

Page 13: ISG Example External1

Workflow Process:

A workflow process is used to invoke the web service using SIF.

Page 14: ISG Example External1

Graphical Design Model:

Page 15: ISG Example External1

The wokflow can be launched using Developer Studio inside EBS Release 12.1.

Workflow Administrator Web Applications > Developer Studio

Type Internal Name: WFINVDEM

Page 16: ISG Example External1

Launch Parameters Example: Item Key: garyinvoke1

Notification Recipient: SYSADMIN

Web Service Callback Event: oracle.apps.wf.movie.receive

Invoker Event: oracle.apps.wf.movie.invoke

Invoker Key: garyinvoke1

Web Service Callback Agent: WF_WS_JMS_IN

Zip Code: 32822

Radius around the Zip in miles: 10

Page 17: ISG Example External1

Status Monitor Status Diagram View:

The launched workflow process is waiting for the callback.

Page 18: ISG Example External1

Completion of the process after the callback response is received. The notification is a listing of

the all Cinemas in a 10-mile area of zip code 32822 and the show times of movies they are

showing.

References:

This document of the SIF component of ISG is based on the sample demo written by

Vijay and is published in his blog entry:

“Invoking Web Service from Oracle Workflow process”

http://blogs.oracle.com/ebusinesssuiteintegration/2009/07/invoking_web_service_from_orac_1.html

Page 19: ISG Example External1

Note 736404.1 How To Troubleshoot Service Invocation Framework(SIF) In 12.1.1

Integrated SOA Gateway