oaug collaborate sadia_tahseen
TRANSCRIPT
REMINDER
Check in on the
COLLABORATE mobile app
Comparison of ISG With Oracle Apps Adapter for Integration of SOA With Oracle E-Business Suite
by:
Sadia Tahseen
Fusion Middleware Architect/Developer
EnnVee TechnoGroup Inc.
Session ID#: 14095
About the SpeakerSadia Tahseen
■ Sadia Tahseen is an experienced Fusion Middleware Developer/Architect
■ Over 8+ years experience in IT predominantly in Oracle Databases and Oracle
Fusion middleware technologies (SOA/AIA)
■ MS in Computer Science
■ Certifications: Oracle SOA Presales Expert , Oracle SOA Implementation
Infrastructure Specialist, Oracle Certified Professional
■ Early Contributor to Service Tech Magazine/OTN/OAUG/NCOAUG
■ Active Researcher in Fusion Middleware/Cloud Computing
Contact:[email protected]
AGENDA
SOA Based Integration Options
SOA Principles of Oracle E-Business Suite
Oracle E-Business Suite Integrated SOA Gateway
Integration Repository
Oracle E-Business Suite Adapter
Interfaces(architectural representations of ISG and Apps Adapter)
1.Business Events
2.PL/SQL APIs
3.Open Interface Tables
4.Concurrent program
SOA Monitor
Architectural Changes in Release 12.2
Oracle E-Business adapter Vs Integrated SOA Gateway
EnnVee TechnoGroup
EnnVee provides Oracle Applications E-Business Suite Managed Services to reduce the complexity and cost of applications management and support
Founded in 2003 to Provide Global Software Development Services Seasoned Management
Team. Over 20+ Product Development and 50+ (ERP/BI/SOA) Implementation Roll-Outs
Our On-Shore / Off-Shore capability helps customers reduce the cost and complexity of Oracle
Applications Management, achieve higher operational efficiencies, and enhance their business
performance.
Industry best
practices
Economies of scale to
deliver unmatched and cost -
effective levels of support
and system availability
Dedicated and experienced
staff ensures service
consistency
Collective experience in
supporting Oracle
Applications/Fusion Middleware
& Database Technology ensures
reliability
Focused on the Middle Market
Specialized solutions for
middle market
Flexible model offers choice from a host of
services
Timely support in dynamic markets
SOA Based Integration Options
SOA Principles
Service Broker
Web Service Client
(Consumer)
Web Service Provider
Find Register
Invoke
Integration Repository
Web Service Client
(Consumer)
E-Business Adapter
Find Register
Invoke
SOA Concept E-Business Suite SOA
Service Broker : Describe Service location and contract
Integration Repository
Service Provider : An appropriate agent to implement a particular service
Oracle E-Business Suite Adapter
Oracle E-Business Suite
Integrated SOA Gateway
Integrated SOA Gateway
Integrated Repository
PL/SQLAPIs
BSO
Interface Tables
Java APIs
Concurrent ProgramsInterface
Views
XML Gateway
Commerce Gateway
Business Event System
Oracle Workflow
J2EE Application Server(Oracle AS)
Web Services
Integrated SOA Gateway (ISG) is a SOA-based integration infrastructure for E-Business Suite R12 (EBS) with
an objective to provide, consume and monitor web services for out of the box integrations in a
heterogeneous ecosystem. ISG is built based on Oracle Fusion Middleware (OFM) and Service Oriented
Architecture (SOA) and uses the Oracle Apps Adapter
Oracle E-Business Suite Integrated SOA Gateway employs essential key components that enable
service integration at design time and run time, and ease the service management throughout the
entire service integration and deployment life cycle.
Oracle E-Business Suite
Integrated SOA Gateway Architecture
Service Designer
Service Loader
Service Generator
Oracle JDeveloper
Integration Repository
Service Deployer
Web Service Security
Function Security
Exception/Error Handling
Logging & Monitoring
Application Server Service
Provider
SOA Suite BPEL PM
3rd Party J2E with BPEL PM
Create Composite Services
Create Service Artifacts
Create Native Services
Load Artifacts
Native Services Invocation
Composite Services
Native Services
Deploy Services
Service Consumer
Composite Services Invocation
Composite Services (BPEL Export)
Business Benefits
Oracle E-Business Suite Integrated SOA Gateway
• Provide out-of-box (prebuilt & reusable) Web services • Consume Web services• Complements with AIA• Path to Fusion• Enforce function security and role-based access control
security to allow only authorized users to execute administrative functions
Flexible Integration
Architecture
• Monitor integration transactions from SOA Monitor
• Comprehensive details about integration transactions
• Integrate loosely coupled and heterogeneous application
• Use native services as building blocks to create composite services
• Support annotated custom integration interfaces from Oracle Integration Repository
• Enable Web service invocation from Oracle E-Business Suite
• Incremental in approach to integration
Gain Visibility
into Integration
• Maximize investment of existing IT assets
• Leverage interoperability with standards-based integration
• Composite services-simplify complexity
• Simplified user experience enabling SOA
• Increase agility and lower integration costs
Lower Total Cost of
Ownership
• Business Events’—”Subscription Model”
• Composite services—simplify complexity
• native service enablement capability within the Oracle E-Business Suite.
• Faster generate-deploy-implement service enablement lifecycle
More Interfaces
First we log on to E-Business Suite as the SYSADMIN user
Next we navigate to the Integrated SOA Gateway and into the Integration Repository, as shown in the image next slide.
Privileges System Integration Analyst System Integration DeveloperIntegration Repository
Administrator
View public interfaces Yes Yes Yes
View private/internal
interfacesNo Yes Yes
Generate/regenerate web
services (WSDL)No No Yes
Deploy/redeploy Web Services No No Yes
Un deploy Web Services No No Yes
Subscribe to business events No No Yes
Create Grants No No Yes
Download Composite services No (configurable) Yes Yes
Like any other feature in the Oracle EBS, we need to have the right privileges to use the SOA Gateway.
Therefore, we have to create a user that has the correct permissions to generate and deploy a web service. The following table can be found in the “Oracle E-Business Suite Integrated SOA Gateway User's Guide”
Integration Repository
Integration Repository is an integral part of Oracle EBS. It has a powerful UI for
searching and viewing available Interfaces exposed by Oracle Apps. It is kept in synch
with latest source code via standard apps patching technology.
Catalog of all EBS public integration points.
Exposes the following integration
interfaces as web services:
• PL/SQL API(2650+)
• Business Events(915+)
• XML Gateway(170+)
• E Commerce Gateway(24+)
• Open Interface Tables/Views(147+)
• Concurrent Programs(214+)
• Business Service Object
• Composite Services
IREP can be used to easily discover and search on business interfaces, regardless of custom or Oracle packaged ones, from the catalog for integration with any system, application, or business partner. Catalog is searchable on keywords and navigable by product family. It enforces security rules to allow only authorized users to perform administrative tasks such as generate and deploy Web services.
Integration Repository
Publishing Custom Interfaces
Integration RepositoryCustom Interfaces in E-Business Suite
HR
Projects
Finance
Order
Procure
Planning
Sales
Shipping
Annotate Interfaces
PL/SQL API
Concurrent Program
XML Message
Business Service Object
Business Event
Reads annotated files and generates Integration Repository Loader Files
FNDLOAD Uploads Loader File to Integration Repository
Loader File (ildt)
Stand Alone Parser
Oracle E-Business Suite customers can upload Oracle E-Business Suite customizations/ extensions to the repository to get a unified view of Oracle E-Business Suite and their customizations. The custom interfaces can be uploaded to Oracle Integration Repository in three simple steps: Annotate the custom interface source file following the published Oracle Integration
Repository annotation standards and guidelines. Validate the annotated source file using the Oracle Integration Repository Parser tool.
Annotations are extracted as an ildt file. Upload the ildt file containing the parsed annotations using the FNDLOAD utility. The
custom interface information is then accessible from Oracle Integration Repository.
Features Leverages Integration Repository and exposes
only recommended public interfaces Version aware design-time. Packaged IREP
content Secured and trusted connection. There is
dynamic setting of Application context, Apps Password-No sharing with FMW and also supports multiple languages and multiple
organization access control (MOAC) Exception and Error handling support-Faults
for native E-business Integration components XA transaction Support Supports multiple Oracle EBS Versions Protects SOA exposed APIs from unauthorized
access Faster design to deploy time and Declarative
development of Integration solutions
Oracle EBS(Apps) adapter are available out-of-the-box, have a wizard driven configuration, leverage IREP and expose only the public interfaces and generate the adapter metadata as WSDL files with JCA extensions. “Oracle Fusion Middleware Adapter for Oracle Applications provides comprehensive, bidirectional, multimodal, synchronous, and asynchronous connectivity to Oracle E-Business Suite from non-Oracle applications through Oracle Fusion Middleware SOA Suite”
Oracle Apps AdapterSchematic architecture
Service Oriented Architecture
Oracle E-Business Suite Adapter—Life Cycle
JDeveloperDevelop
Adapter FrameworkIntegrate: Technology
Integration RepositoryIntegrate: Content
BPEL PMOrchestrate
Oracle EBS SecurityAccess Control
Enterprise ManagerMonitor & Manage
Oracle E-Business Suite Adapter
Leverages Integration Repository
■ Version Aware design-time
■ Packaged with Adapter for
11.i.10
■ Live connection and
cache in R12
Business BenefitsOracle E-Business Suite Adapter
Exposes E-Business Suite Integration Interfaces as standard web services for 1.5.x versions
Supports multiple versions of Oracle Apps in a heterogeneous eco-system
Supports most-used interface types
Agile and Flexible architecture
Intuitive UI-Simplifies design time
Faster design to deploy time
Declarative development of Integration solutions
Secure Integration by Authentication(trusted connection) and Authorization(execution of
privileges)
Secure and protects SOA exposed APIs from unauthorized access
No coding required
Interfaces1.Business Event
“A business event is an occurrence in an internet or intranet application or program that might be
significant to other objects in a system or to external agents.”
▪ For example, the creation of a purchase order is an example of a business event in a
purchasing application or receiving an Order or shipping an order in supply chain is
another example
Business Events
■ Leverages the Oracle Advanced Queuing (AQ) infrastructure to communicate business
events between systems.
■ Includes Event Manager and Workflow process event activities.
■ The Event Manager lets you register subscriptions to significant events
■ Event Activities representing Business event within workflow processes enables modeling
complex business flows or logics within workflow processes.
■ BES is available with both standalone and E-Business Suite Workflow
■ BES provides event driven processing. Allows Application modules and external systems to
raise events
■ BES facilitates Oracle Application modules and external system to subscribe to these events.
Subscriptions can be synchronous or asynchronous
■ Events can be raised locally or received from an external system or the local system through
AQ. Workflow API: WF_EVENT.raise
■ ISG supports business events through event subscription
B. Run Time
A. Design Time
Oracle Apps
OracleE-Business
WSDLBusiness Event
Event RaisedAdvanced
Queue
Subscriptions Executed
Inbound Business Events
Architecture
The Event Manager lets you register subscriptions to significant events. Events can be raised locally or received from an external system or the local system through AQ. Subscriptions can include the executing custom code on the event information or sending event information to a workflow process or sending event information to other queues or systems.
B. Run Time
A. Design Time
Oracle Apps
WSDLBusiness Event
EventRaised
WF_BPEL_Q
Advanced Queue
S1–Sn(Seeded Subscriptions)
Sn+1(Deferred Subscriptions)
WF_BPEL_Q
Oracle Apps
Event SubscriptionsListens to WF_BPEL_QAgent
E-Business Suite is preconfigured with numerous Business Events and each business event represents a ready to use Integration point. Unique consumer is created
Subscription to Business event from Integration repository page must be made first and these Integrations are enqueued in AQ named WF_BPEL_Q to get event details.
At runtime a WF_BPEL_QAgent Listener polls this queue and incase new records are found the corresponding BPEL Process is triggered.
Composite is deployed before raising the business event so that subscribed business event is successfully enqueued to WF_BPEL_Q
PULL Mechanism wherein AQ Adapter could be used to dequeue the event message and be used in SOA processes.
Outbound Business Events-ISG
Architecture
B. Run Time
A. Design Time
Oracle Apps
WSDLBusiness Event
EventRaised
WF_BPEL_Q
Advanced Queue
S1–Sn(Seeded Subscriptions)
Sn+1(Deferred Subscriptions
for Apps Adapter)
WF_BPEL_Q
Oracle Apps
Event SubscriptionsListens to WF_Deferred_Q
E-Business Suite is preconfigured with numerous Business Events and each business event represents a ready to use Integration point. Unique consumer is created
Subscription to Business event is created internally in background to listen to Business event At runtime a WF_Deferred_Queue polls this queue and incase new records are found the corresponding BPEL
Process is triggered. WF_Deferred_listener must be up and running on target instance and Event must be enabled for BPEL to subscribe to it.
Composite is deployed before raising the business event so that subscribed business event is successfully enqueued to WF_BPEL_Q
The usage of business event by EBS Adapter can be considered a PULL mechanism wherein the EBS Adapter dequeues the message from WF_BPEL_Q in E-Business suite database.
Outbound Business Events-Oracle EBS Adapter
Architecture
2. PL/SQL API
■ Public PL/SQL APIs are used for inserting and updating Oracle Applications data
■ Multiple operations can be performed by procedures for a business service
■ Typically used for A2A integration purposes
■ ISG in EBS R12.2 is capable of supporting synchronous/asynchronous web service
interactions through PL/SQL APIs.
■ In R12.2,PL/SQL APIs can be exposed both as SOAP and REST webservices
■ Exposed as Web service(WSDL) and generated Web service can be deployed from IREP to
Oracle e-business Application server
PL/SQL APIs –ISG
Architecture
Run Time
Design Time
Apps Initialize
DataDataData
PL/SQL
WSDLApps
Context Info
Integration Repository
Populating certain variables in the BPEL Process Manager (in invoke component) in order to provide context information for Oracle Applications.The context is set taking into account the values passed for the header properties including Username, Responsibility, Responsibility Application, Security Group, and NLS Language.
Steps to expose an Interface as Secure Web Service
Initially BUILD PL/SQL Package and then Annotate Package and compile and generate ILDT loader file and Load this file to Integration Repository via FNDLOAD
The following steps should be done using after uploading API to integration repository1.To Generate WSDL ,locate the interface definition first and click Generate WSDL in the interface details page.Once the service is successfully generated, the Web Service appears in the interface details page
2.To deploy a generated Web service, select at least one authentication type and click Deploy in the Web Service - SOA Provider region of the interface details page to deploy the service.Once the service is successfully deployed, the selected authentication type(s) will be displayed along with 'Deployed' Web Service Status
You can now see a link to the service description (WSDL) that can be used to call this service from other applications, systems, etc. You can click on that View WSDL link (record) to see the WSDL code.
An integration developer also needs to log on to the system to locate and record the deployed Web service WSDL URL for the interface that needs to be orchestrated into a meaningful business process in Oracle JDeveloper using BPEL language.This can be done by clicking the View WSDL link in the interface details page to open a new window or tab. Copy the WSDL URL from the new window. This URL will be used later in creating a partner link for the interface exposed as a Web service during the BPEL process creation at design time.
The next step is to grant access to the service, so that we will be able to invoke it. To do this, we expand the list of operations in the last part of the interface page in Integration Repository , then check the box next to the interface we want to grant access to, and click on the Grant Access button. Then enter the username for the user you want to grant access to, or use the search button to find the user.
Then finally invoking the SOA service from BPEL Process Manager
PL/SQL APIs-Oracle EBS Adapter
Architecture
Run Time
Design Time
Apps Initialize
DataDataData
PL/SQLJPub PL/SQL Wrappers
WSDLApps
Context Info
Integration Repository
If the input and the output parameters of the Stored Procedure contains complex data types like PL/SQL Boolean, PL/SQL Table or PL/SQL Record,that are not readily mapped to JDBC types, the apps adapter invokes Oracle JPublisher to generate the necessary wrappers automatically. Oracle JPublisher generates two SQL files, one to create schema objects, and another to drop them besides generating WSDL and XSD Files.
3.Open Interface Tables
■ Intermediate staging tables when the data is inserted/updated
■ The data from these tables is posted into base tables via the
concurrent programs
■ Interface tables can be used only for insert operations and
support only an inbound connection into Oracle Applications.
■ The Open Interface tables are typically used for internal and A2A
Integration purposes
Open Interface TablesSchematic Diagram
Oracle Form
Import Programs Interface Tables
Oracle E-Business Suite
3rd Party Adapter
DatabaseOracle
Database
Gateway Technology
Non-OracleDatabase
EDI Gateway/ XML Gateway
EDI or XML
SQL *Loader FlatFile
Validation using the systemsapplication logic
Open Interface Tables-Oracle EBS Adapter
Architectural Diagram
Design Time
Interface Tables
Run Time
Apps Initialize
DataDataData
Integration Repository
WSDLApps
Context Info
CreateJOIN
(optional)
The primary keys on all the interface tables being used and parent-child relationships among all the selected interface tables need to be defined.
4.Concurrent Programs
■ An Execution file that can be an operating system file or
database stored procedure which contains application
logic(example: PL/SQL, Java)
■ Typically used to move data from staging tables to base tables
■ Concurrent program in ISG can be exposed as web services
based integration interface
■ Typically used for internal and A2A integration purposes.
Design Time
Run Time
Apps Initialize
Integration Repository
WSDLApps
Context Info
Concurrent Program
Concurrent Programs-ISGArchitectural Diagram
DataDataData
Generate & Deploy & locate
This is pretty similar to PL/SQL API approach of generating, deploying and locating WSDL.
To generate a Web service, locate the interface definition first from the Oracle Integration
Repository and click Generate WSDL in the interface details page. The Web Service - SOA
Provider region appears in the interface details page.
To deploy a generated Web service, select at least one authentication type
and click Deploy in the Web Service - SOA Provider region of the interface details page to deploy
the service.
Once the service is successfully deployed, the selected authentication type(s) will be displayed
along with 'Deployed' Web Service Status.
This is pretty similar to PL/SQL API approach of generating, deploying and locating WSDL.
Concurrent Programs-Oracle EBS Adapter
Architectural Diagram
Design Time
Run TimeApps Initialize
Integration Repository
WSDLApps
Context Info
Concurrent Program
Base Tables
Concurrent Program
Interface Tables
Concurrent manager runs in the background waiting for a concurrent program to be submitted and once it is submitted ,it puts it into execution queue. BPEL processes insert data into open interface tables/staging tables, on which concurrent programs run, validate data and push data into final base tables.
SOA Monitor
■ SOA Monitor is a managing tool to monitor the SOAP request and response traffic
with SOA and Web Service Provider.
■ With SOA Monitor, the Integration Repository Administrator can effectively manage
and identify errors incurred during the service deployment life cycle and take
necessary actions to expedite the interaction between services.
By clicking the Request and Response icons it is possible to view the details about a specific web service call. The Status column indicates if the invocations were successful or not.
Architectural Changes in Release 12.2
Oracle EBS ISG Vs EBS AdapterINTEGRATED SOA GATEWAY E-BUSINESS SUITE ADAPTER
SOAP web service Standard JCA service
Provided out-of box from EBS Provided from SOA suite in mid-tier
Provides Interoperability leverage from standard web
service client(WLS JAX-WS, Apache Axis,. NET)
Provided via Oracle BPEL Process Manager or
Enterprise Service Bus in Jdeveloper
Multi-Service Transaction failures need to be handled
explicitly
Multiservice transaction failures are rolled back
implicitly via transaction control of JCA framework
Consumption of External web services for lightweight
integration via native service invocation framework
Consumption of external web services is via Oracle
BPEL Process manager or Enterprise service bus
Integration transactions are monitored via SOA
monitor
Integration Transaction are monitored via BPEL
PM,ESB Consoles
Comes inbuilt with Oracle E-Business R12+ versions Full-use licenses for SOA suite, EBS adapter, WLS
suite needs to be purchased
Supports integrations PL/SQL API,BSO,BE,XML
Gateway(IN) & Concurrent program, Java APIs (forms)
Support PL/SQL API,XML Gateway(IN),Concurrent
Program, EDI, Open Interface tables & views
WS Policies cannot be defined WS Policies(AT,RM,MTOM) can be defined (through
OWSM and SOA suite)
Asynchronous Interaction pattern is not supported
prior R12.2 version
Asynchronous Interaction pattern is supported
New product since EBS R12.1.1 Supports EBS 11iCU2,R12.0.X,R12.1.X
Please complete the session evaluationWe appreciate your feedback and insight