![Page 1: ODTUG An Introduction to Application Integration Architecture](https://reader035.vdocuments.us/reader035/viewer/2022070320/5586da4ad8b42a5c718b4611/html5/thumbnails/1.jpg)
An Introduction to Application Integration Architecture ( AIA )
Edwin Biemond
Whitehorses
![Page 2: ODTUG An Introduction to Application Integration Architecture](https://reader035.vdocuments.us/reader035/viewer/2022070320/5586da4ad8b42a5c718b4611/html5/thumbnails/2.jpg)
Goal of this Presentation
To make you understand what AIA is and what it can do for you.
What are the development steps of an AIA project
Hope this presentation can be a guide for your own AIA project.
![Page 3: ODTUG An Introduction to Application Integration Architecture](https://reader035.vdocuments.us/reader035/viewer/2022070320/5586da4ad8b42a5c718b4611/html5/thumbnails/3.jpg)
Software
Required• SOA Suite 11g R1• AIA Foundation Pack
Optional• Oracle Service Bus• Oracle Enterprise
Repository• BPM• BPA Suite• ODI
![Page 4: ODTUG An Introduction to Application Integration Architecture](https://reader035.vdocuments.us/reader035/viewer/2022070320/5586da4ad8b42a5c718b4611/html5/thumbnails/4.jpg)
Minimum Installation
11g R2 Database for AIA and SOA Suite Repository RCU 11g R1 PS3, Repository Creation Utility WebLogic 10.3.4 SOA Suite 11g R1 PS3 AIA Foundation Pack PS3, installation instructions
http://blog.whitehorses.nl/2011/02/19/installing-aia-on-soa-suite-11g-r1-ps3-developer-release/
![Page 5: ODTUG An Introduction to Application Integration Architecture](https://reader035.vdocuments.us/reader035/viewer/2022070320/5586da4ad8b42a5c718b4611/html5/thumbnails/5.jpg)
What is AIA
Oracle’s approach to implementing SOA Tools
● Process model decomposition -> Project Lifecycle Workbench
● Service construction -> JDeveloper plug-in● Deployment plan generation● Deployment
Canonical Model with XSD’s and WSDL’s Error Hospital for Business and Systems Faults Testing and simulation of Services
![Page 6: ODTUG An Introduction to Application Integration Architecture](https://reader035.vdocuments.us/reader035/viewer/2022070320/5586da4ad8b42a5c718b4611/html5/thumbnails/6.jpg)
AIA Foundation Pack and PIPs
![Page 7: ODTUG An Introduction to Application Integration Architecture](https://reader035.vdocuments.us/reader035/viewer/2022070320/5586da4ad8b42a5c718b4611/html5/thumbnails/7.jpg)
AIA Example
An AIA process is not 1 composite with some service components like BPEL, Mediator and Human Tasks
![Page 8: ODTUG An Introduction to Application Integration Architecture](https://reader035.vdocuments.us/reader035/viewer/2022070320/5586da4ad8b42a5c718b4611/html5/thumbnails/8.jpg)
AIA Process steps
Let’s build an AIA process by following the next steps Define a new Project, Business Tasks and Service Solution Components Identifying your Enterprise B. Object(XSD) and Services (WSDL) Building Composites
● Adapters● Application Business Connector Services (ABCS)● Enterprise Business Services (EBS)● Enterprise Business Flow (EBF)
Annotate your Composites Harvest your Composites to Lifecycle Workbench Bill of Material (BOM) Generate a Deployment Plan from the generated BOM Deployment of the Resource Adapters, Composites & AIA Configuration
Testing your AIA process with the Composite Application Validation System (CAVS) Error Hospital for System and Business Faults
![Page 9: ODTUG An Introduction to Application Integration Architecture](https://reader035.vdocuments.us/reader035/viewer/2022070320/5586da4ad8b42a5c718b4611/html5/thumbnails/9.jpg)
Creating a new Project
url = http://xxxx/AIA/faces/aiaHomeLogin.jspxGo to the Project Lifecycle Workbench application
![Page 10: ODTUG An Introduction to Application Integration Architecture](https://reader035.vdocuments.us/reader035/viewer/2022070320/5586da4ad8b42a5c718b4611/html5/thumbnails/10.jpg)
Add a Project with Business Tasks
Define a new Project with one or more Business Tasks
![Page 11: ODTUG An Introduction to Application Integration Architecture](https://reader035.vdocuments.us/reader035/viewer/2022070320/5586da4ad8b42a5c718b4611/html5/thumbnails/11.jpg)
Service Solution Components
Forces you to think about your process and split up the project in SOA Composites
![Page 12: ODTUG An Introduction to Application Integration Architecture](https://reader035.vdocuments.us/reader035/viewer/2022070320/5586da4ad8b42a5c718b4611/html5/thumbnails/12.jpg)
Enterprise Business Object EBO
AIA has many pre-defined business data object Identify and optional extend the XSDs you want to use
![Page 13: ODTUG An Introduction to Application Integration Architecture](https://reader035.vdocuments.us/reader035/viewer/2022070320/5586da4ad8b42a5c718b4611/html5/thumbnails/13.jpg)
Enterprise Business Message EBM
AIA contains an EBM for every Enterprise Business Object EBMs are the messages that are exchanged between two
applications Has XSD elements for Operation input and response Has an EBM Header for tracing and routing information
![Page 14: ODTUG An Introduction to Application Integration Architecture](https://reader035.vdocuments.us/reader035/viewer/2022070320/5586da4ad8b42a5c718b4611/html5/thumbnails/14.jpg)
Enterprise Business Service EBS
Has many Web service definitions for performing a business task Identify the Service Operations you want to use
![Page 15: ODTUG An Introduction to Application Integration Architecture](https://reader035.vdocuments.us/reader035/viewer/2022070320/5586da4ad8b42a5c718b4611/html5/thumbnails/15.jpg)
Building Composites
Start from the Destination Application -> Source Application● This way you can deploy and test your composite with SoapUI● Have a service definition for the next composite who use this
WSDL as a reference
ScottEmployee
HREmployee
Application Adapter
Application Adapter
Source Destination
ABCSProvider
ABCSRequester
EBS EBS
EBF
![Page 16: ODTUG An Introduction to Application Integration Architecture](https://reader035.vdocuments.us/reader035/viewer/2022070320/5586da4ad8b42a5c718b4611/html5/thumbnails/16.jpg)
Application Adapters
Choose your application adapter, like a DB or AQ/JMS Adapter Expose this Adapter as a Service with your own Application XSD and
WSDL Add the adapter WSDL and XSD to the AIA DB MDS
Generated DB adapter XSD
Own ApplicationXSD
Transformation
![Page 17: ODTUG An Introduction to Application Integration Architecture](https://reader035.vdocuments.us/reader035/viewer/2022070320/5586da4ad8b42a5c718b4611/html5/thumbnails/17.jpg)
Application Business Connector Services
Generated by the AIA Service Constructor● Always BPEL when Stateful or Asynchronous
Tasks ABCS● Validation● Transformations like message translation, content
enrichment● Invoking application operations● Error handling● Security
![Page 18: ODTUG An Introduction to Application Integration Architecture](https://reader035.vdocuments.us/reader035/viewer/2022070320/5586da4ad8b42a5c718b4611/html5/thumbnails/18.jpg)
ABCS Creation (Provider side)
Start the AIA Service Constructor in JDeveloper Connect to the AIA Lifecycle Workbench and select the
ABCS from the Service Solution Components
![Page 19: ODTUG An Introduction to Application Integration Architecture](https://reader035.vdocuments.us/reader035/viewer/2022070320/5586da4ad8b42a5c718b4611/html5/thumbnails/19.jpg)
ABCS Service
Select the EBS WSDL from the MDS connection ( Resource Palette) Choose the operation
![Page 20: ODTUG An Introduction to Application Integration Architecture](https://reader035.vdocuments.us/reader035/viewer/2022070320/5586da4ad8b42a5c718b4611/html5/thumbnails/20.jpg)
ABCS Reference
Enable Error handling Enable Testing Simulation Select the Application Adapter WSDL
![Page 21: ODTUG An Introduction to Application Integration Architecture](https://reader035.vdocuments.us/reader035/viewer/2022070320/5586da4ad8b42a5c718b4611/html5/thumbnails/21.jpg)
ABCS Composite
EBS Service with the QueryPerson operation, a BPEL component and an Application Adapter & AIA Error handling as Reference
![Page 22: ODTUG An Introduction to Application Integration Architecture](https://reader035.vdocuments.us/reader035/viewer/2022070320/5586da4ad8b42a5c718b4611/html5/thumbnails/22.jpg)
ABCS BPEL Flow
Read and Fill the EBM HeaderAdd some Tracing information
Set the endpoint to Application Adapter or Test Simulator
![Page 23: ODTUG An Introduction to Application Integration Architecture](https://reader035.vdocuments.us/reader035/viewer/2022070320/5586da4ad8b42a5c718b4611/html5/thumbnails/23.jpg)
ABCS Exception Handling
Can handle Adapter failures
![Page 24: ODTUG An Introduction to Application Integration Architecture](https://reader035.vdocuments.us/reader035/viewer/2022070320/5586da4ad8b42a5c718b4611/html5/thumbnails/24.jpg)
Enterprise Business Services
Can be a Mediator or an OSB Proxy
![Page 25: ODTUG An Introduction to Application Integration Architecture](https://reader035.vdocuments.us/reader035/viewer/2022070320/5586da4ad8b42a5c718b4611/html5/thumbnails/25.jpg)
Enterprise Business Flow
Implements the Business activity Can be BPM or BPEL Long running Can contain Human Tasks & Business
Rules Raise Business Faults to Error Hospital Calls EBS Services
![Page 26: ODTUG An Introduction to Application Integration Architecture](https://reader035.vdocuments.us/reader035/viewer/2022070320/5586da4ad8b42a5c718b4611/html5/thumbnails/26.jpg)
EBF Composite
Has EBS references and is called by an EBS Composite Has an AIA Error handler reference for Business Faults
![Page 27: ODTUG An Introduction to Application Integration Architecture](https://reader035.vdocuments.us/reader035/viewer/2022070320/5586da4ad8b42a5c718b4611/html5/thumbnails/27.jpg)
EBF Business Fault Example
Check if an Employee already exists if so raise a Business Fault
![Page 28: ODTUG An Introduction to Application Integration Architecture](https://reader035.vdocuments.us/reader035/viewer/2022070320/5586da4ad8b42a5c718b4611/html5/thumbnails/28.jpg)
Annotate your Composites
Add annotations to Composite, Services and References elements ( composite.xml )
Will be used by the Harvester utility This data will be used in the deployment plan generator
![Page 29: ODTUG An Introduction to Application Integration Architecture](https://reader035.vdocuments.us/reader035/viewer/2022070320/5586da4ad8b42a5c718b4611/html5/thumbnails/29.jpg)
Reference Annotations
Added to the AIA DB Resource Adapter
![Page 30: ODTUG An Introduction to Application Integration Architecture](https://reader035.vdocuments.us/reader035/viewer/2022070320/5586da4ad8b42a5c718b4611/html5/thumbnails/30.jpg)
Harvester
Read the Composites Annotations Optionally Publish to Oracle Enterprise Repository Updates the project service components (Lifecycle workbench)
Create HarvesterSetting.xml and start AIAHarvest.bat
![Page 31: ODTUG An Introduction to Application Integration Architecture](https://reader035.vdocuments.us/reader035/viewer/2022070320/5586da4ad8b42a5c718b4611/html5/thumbnails/31.jpg)
Bills of Materials
Go to the AIA Lifecycle Workbench Generate the Bill of Materials of your project
![Page 32: ODTUG An Introduction to Application Integration Architecture](https://reader035.vdocuments.us/reader035/viewer/2022070320/5586da4ad8b42a5c718b4611/html5/thumbnails/32.jpg)
Export Bills of Materials
Optional -> change or add composites
Export BOM.xml
![Page 33: ODTUG An Introduction to Application Integration Architecture](https://reader035.vdocuments.us/reader035/viewer/2022070320/5586da4ad8b42a5c718b4611/html5/thumbnails/33.jpg)
Generate Deployment Plan
Start the ANT Deployment Plan Generator
( AIADeploymentPlanGenerator.xml )● Bill of Materials ( BOM.xml ) will be used as input
![Page 34: ODTUG An Introduction to Application Integration Architecture](https://reader035.vdocuments.us/reader035/viewer/2022070320/5586da4ad8b42a5c718b4611/html5/thumbnails/34.jpg)
Deployment Plan
A XML which is read by the ANT Deployment Utility Can create, configure or deploy the following:● JDBC Datasources● JMS Resources● MDS update● Start & shutdown WLS Server● Resource Adapters AQ, DB, JMS● EAR & WARS● Composites
See my blog for more information http://biemond.blogspot.com/2011/02/do-your-soa-deployments-configuration.html
![Page 35: ODTUG An Introduction to Application Integration Architecture](https://reader035.vdocuments.us/reader035/viewer/2022070320/5586da4ad8b42a5c718b4611/html5/thumbnails/35.jpg)
Deployment configuration
JDBC Datasource
JMS Queue
Update MDS
Shutdown Managed ServerAdd an entry to the DBResource adapter
Deploy a WAR
Deploy a Composite
![Page 36: ODTUG An Introduction to Application Integration Architecture](https://reader035.vdocuments.us/reader035/viewer/2022070320/5586da4ad8b42a5c718b4611/html5/thumbnails/36.jpg)
Enterprise Manager & AIA
With SOA Suite 11g you can still follow the instance through all the AIA Composites
![Page 37: ODTUG An Introduction to Application Integration Architecture](https://reader035.vdocuments.us/reader035/viewer/2022070320/5586da4ad8b42a5c718b4611/html5/thumbnails/37.jpg)
Error Handling
Two types of faults● System / Adapter Faults which are captured by
the ABCS ( Generated by the JDeveloper Service Constructor)
● Business Faults can be thrown in the EBF Composite (Developer Task)
![Page 38: ODTUG An Introduction to Application Integration Architecture](https://reader035.vdocuments.us/reader035/viewer/2022070320/5586da4ad8b42a5c718b4611/html5/thumbnails/38.jpg)
Error Handling - Configuration
Defined in the AIAConfigurationProperties.xml located in the MDS
Enabling Tracing Define your own error handling class Enable BPM Worklist Enable Email notification
![Page 39: ODTUG An Introduction to Application Integration Architecture](https://reader035.vdocuments.us/reader035/viewer/2022070320/5586da4ad8b42a5c718b4611/html5/thumbnails/39.jpg)
Error Handling - Notifications
• Go to http://xxxx/AIA/faces/aiaHomeLogin.jspx• Click on the Go button in the Setup window• Configure actions for a particular fault
![Page 40: ODTUG An Introduction to Application Integration Architecture](https://reader035.vdocuments.us/reader035/viewer/2022070320/5586da4ad8b42a5c718b4611/html5/thumbnails/40.jpg)
Error Handling - BPM Worklist
Business and System Faultsshown in the BPM Worklist Application which has an ADF Task Flow for the Task details
![Page 41: ODTUG An Introduction to Application Integration Architecture](https://reader035.vdocuments.us/reader035/viewer/2022070320/5586da4ad8b42a5c718b4611/html5/thumbnails/41.jpg)
Composite Application Validation System
Go to http://xxxx/AIA/faces/aiaHomeLogin.jspx Press the Go button in the CAVS window
What can CAVS do for you Create tests and validate responses Simulate Adapter services in ABCS Group Tests Combine Test and Simulators with Routing Import / Export Definitions
For more information see my blogpost http://biemond.blogspot.com/2011/03/test-your-services-with-aia-cavs.html
![Page 42: ODTUG An Introduction to Application Integration Architecture](https://reader035.vdocuments.us/reader035/viewer/2022070320/5586da4ad8b42a5c718b4611/html5/thumbnails/42.jpg)
CAVS Definitions
![Page 43: ODTUG An Introduction to Application Integration Architecture](https://reader035.vdocuments.us/reader035/viewer/2022070320/5586da4ad8b42a5c718b4611/html5/thumbnails/43.jpg)
CAVS Test
Load the WSDL and select the operation Define 1 or more Requests Define 1 or more Responses and Generate Xpath Add Expected Node Values
![Page 44: ODTUG An Introduction to Application Integration Architecture](https://reader035.vdocuments.us/reader035/viewer/2022070320/5586da4ad8b42a5c718b4611/html5/thumbnails/44.jpg)
CAVS Simulator
Define requests, Generate XPath and set a unique identifier so the matching response can be returned
Provide the matching Response
![Page 45: ODTUG An Introduction to Application Integration Architecture](https://reader035.vdocuments.us/reader035/viewer/2022070320/5586da4ad8b42a5c718b4611/html5/thumbnails/45.jpg)
Add Simulator on an ABCS reference
![Page 46: ODTUG An Introduction to Application Integration Architecture](https://reader035.vdocuments.us/reader035/viewer/2022070320/5586da4ad8b42a5c718b4611/html5/thumbnails/46.jpg)
CAVS Routing
Activates CAVS Simulators Can be used in a CAVS Test
![Page 47: ODTUG An Introduction to Application Integration Architecture](https://reader035.vdocuments.us/reader035/viewer/2022070320/5586da4ad8b42a5c718b4611/html5/thumbnails/47.jpg)
Conclusion
AIA is a lot of work and it can really help you in building complete and reliable SOA processes● Complete Deployment framework● A lot of XSDs and WSDLs you can use● Error Hospital which handles Business and Adapters Fault● Testing and simulation of Services
Build you own PIP build on AIA and sell it for big Money to Oracle
![Page 48: ODTUG An Introduction to Application Integration Architecture](https://reader035.vdocuments.us/reader035/viewer/2022070320/5586da4ad8b42a5c718b4611/html5/thumbnails/48.jpg)
An Introduction to Application Integration Architecture ( AIA )Please Fill Out Your Evaluations
Edwin Biemond
Whitehorses