Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
INSTALLING AND INVOKING ORACLE DATA INTEGRATOR (ODI)
PUBLIC WEB SERVICES
A White Paper prepared by Raastech
Author
Ahmed A...
INSTALLING AND INVOKING ORACLE DATA INTEGRATOR (ODI) PUBLIC WEB SERVICES
Raastech White Paper  2 / 8
INTRODUCTION
Oracle ...
INSTALLING AND INVOKING ORACLE DATA INTEGRATOR (ODI) PUBLIC WEB SERVICES
Raastech White Paper  3 / 8
INSTALLING THE ODI P...
INSTALLING AND INVOKING ORACLE DATA INTEGRATOR (ODI) PUBLIC WEB SERVICES
Raastech White Paper  4 / 8
Step 3: Upload the O...
INSTALLING AND INVOKING ORACLE DATA INTEGRATOR (ODI) PUBLIC WEB SERVICES
Raastech White Paper  5 / 8
INVOKING THE ODI PUB...
INSTALLING AND INVOKING ORACLE DATA INTEGRATOR (ODI) PUBLIC WEB SERVICES
Raastech White Paper  6 / 8
The following is a s...
INSTALLING AND INVOKING ORACLE DATA INTEGRATOR (ODI) PUBLIC WEB SERVICES
Raastech White Paper  7 / 8
The response of this...
INSTALLING AND INVOKING ORACLE DATA INTEGRATOR (ODI) PUBLIC WEB SERVICES
Raastech White Paper  8 / 8
SUMMARY
Oracle Data ...
Upcoming SlideShare
Loading in …5
×

Installing and Invoking Oracle Data Integrator (ODI) Public Web Services (whitepaper)

552 views

Published on

May 2010

Published in: Technology
  • Be the first to comment

  • Be the first to like this

Installing and Invoking Oracle Data Integrator (ODI) Public Web Services (whitepaper)

  1. 1. INSTALLING AND INVOKING ORACLE DATA INTEGRATOR (ODI) PUBLIC WEB SERVICES A White Paper prepared by Raastech Author Ahmed Aboulnaga Copyright Raastech 2010
  2. 2. INSTALLING AND INVOKING ORACLE DATA INTEGRATOR (ODI) PUBLIC WEB SERVICES Raastech White Paper  2 / 8 INTRODUCTION Oracle Data Integrator (ODI) is a comprehensive data integration platform that covers all data integration requirements from high-volume, high performance batches, to event-driven, trickle- feed integration processes, to SOA-enabled data services. This paper will focus on describing how to take advantages of the SOA capabilities built into ODI. ODI 10g (10.1.3.4) has three major areas of web service functionality: 1. Data Services 2. ODIInvokeWebService Tool 3. ODI Public Web Service Data Services provide web service accessibility over an ODI data store (i.e., a table, view or other data source registered in ODI). The ODIInvokeWebService tool provides the ability add to a package to request a response from a web service. Finally, the Oracle Data Integrator Public Web Service lets you execute a scenario (i.e., a published package) via a web service call. ODI provides numerous mechanisms to invoke scenarios, such as from the command prompt. This allows the ability to script the execution of ODI scenarios and take actions based on the response. Below is an example of how a scenario is executed from the command prompt: set ODI_JAVA_HOME=C:oracleproduct10.1.3soa_1jdk set ODI_HOME=c:oracleproduct10.1.3odi_1oracledi cd %ODI_HOME%bin startscen SCENARIONAME 001 GLOBAL "-v=2" By leveraging the ODI Public Web Service, the same scenario can be executed via a web service call. This, for example, allows the coordination of an E-LT process from any web service client such as BPEL or even Oracle Business Activity Monitoring (BAM). This paper will detail steps for the installation and invocation of the ODI Public Web Service.
  3. 3. INSTALLING AND INVOKING ORACLE DATA INTEGRATOR (ODI) PUBLIC WEB SERVICES Raastech White Paper  3 / 8 INSTALLING THE ODI PUBLIC WEB SERVICE The ODI Public Web Service does not need to be installed on the same server in which the ODI Server resides. It requires the following 3 components: 1. Apache Axis2 (axis2.war; freely downloadable from the Apache Software Foundation) 2. ODI Axis Service Archive file (odi-public-ws.aar; included in all ODI installations) 3. Java container (such as Oracle Application Server 10g) Step 1: Download Apache Axis2 Apache Axis2 v1.2 can be downloaded from: http://archive.apache.org/dist/ws/axis2/1_2/axis2.war This WAR file can be deployed to any standard Java container such as OC4J or Apache Tomcat. If installing on OC4J 10g, version 1.2 of Apache Axis2, and not versions 1.3 or 1.4, is required (otherwise a “Requested resource not found!” error may appear when accessing the Axis2 home page). Step 2: Deploy the ‘axis2.war’ file This step describes how to deploy Apache Axis2 to OC4J 10g. This assumes that Oracle Application Server 10g is available and a container is created that will host the Axis2 application. The axis2.war file is deployed to OC4J via EM (Enterprise Manager) as follows: a. Log on to Oracle Enterprise Manager 10g (e.g., http://<hostname>:<port>/em). b. Click on an OC4J container to deploy to (e.g., home). c. Click on ‘Applications’. d. Click on ‘Deploy’. e. Browse for the axis2.war file and click ‘Next’. f. Enter ‘axis2’ as the Application Name and click ‘Next’. g. Click on ‘Deploy’.
  4. 4. INSTALLING AND INVOKING ORACLE DATA INTEGRATOR (ODI) PUBLIC WEB SERVICES Raastech White Paper  4 / 8 Step 3: Upload the ODI Axis Service Archive File The Apache Axis2 page is accessible at http://<hostname>:<port>/axis2/axis2-admin/ on your Oracle Application Server 10g server. a. Navigate to the Apache Axis2 Web Admin page at: http://<hostname>:<port>/axis2/axis2-admin/ b. Log in to Apache Axis2. The default administrator username is ‘admin’ and the default password is ‘axis2’. c. Click on ‘Upload Service’. Figure 1. The Apache Axis2 Web Admin Page d. Browse for the ODI axis service archive file odi-public-ws.aar and click on ‘Upload’. e. This file is located in the ODI Oracle_Home under: $ORACLE_HOME/oracledi/tools/web_services/ The ODI Public Web Service is now accessible at: http://<hostname>:<port>/axis2/services/OdiInvoke?wsdl
  5. 5. INSTALLING AND INVOKING ORACLE DATA INTEGRATOR (ODI) PUBLIC WEB SERVICES Raastech White Paper  5 / 8 INVOKING THE ODI PUBLIC WEB SERVICE The ODI Public Web Service includes the following operations:  listContext  listScenario  invokeScenario  getWebServiceVersion  invokeSession For example, the ‘getWebServiceVersion’ operation merely responds with the ODI Web Service Version. By invoking this web service operation using the following payload: <soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:odi="xmlns.oracle.com/odi/OdiInvoke/"> <soap:Header/> <soap:Body> <odi:getWebServiceVersionRequest/> </soap:Body> </soap:Envelope> …the following response is returned: <soapenv:Envelope xmlns:soapenv="http://www.w3.org/2003/05/soap-envelope"> <soapenv:Body> <ns1:getWebServiceVersionResponse xmlns:ns1="xmlns.oracle.com/odi/OdiInvoke/"> <ns1:version>10.1.3.5.0</ns1:version> </ns1:getWebServiceVersionResponse> </soapenv:Body> </soapenv:Envelope> The ‘invokeScenario’ operation, on the other hand, requires ODI server specific connection information and credentials (hence the reason why this service can reside on a server separate from the ODI Server).
  6. 6. INSTALLING AND INVOKING ORACLE DATA INTEGRATOR (ODI) PUBLIC WEB SERVICES Raastech White Paper  6 / 8 The following is a sample payload used for the ‘invokeScenario’ operation: <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:odi="xmlns.oracle.com/odi/OdiInvoke/"> <soapenv:Header/> <soapenv:Body> <odi:invokeScenarioRequest> <odi:RepositoryConnection> <odi:JdbcDriver>oracle.jdbc.driver.OracleDriver</odi:JdbcDriver> <odi:JdbcUrl>jdbc:oracle:thin:@dbhost:1521:dbname</odi:JdbcUrl> <odi:JdbcUser>odi</odi:JdbcUser> <odi:JdbcPassword>password</odi:JdbcPassword> <odi:OdiUser>SUPERVISOR</odi:OdiUser> <odi:OdiPassword>SUNOPSIS</odi:OdiPassword> <odi:WorkRepository>Work Repository Name</odi:WorkRepository> </odi:RepositoryConnection> <odi:Command> <odi:ScenName>SCENARIONAME</odi:ScenName> <odi:ScenVersion>001</odi:ScenVersion> <odi:Context>GLOBAL</odi:Context> <odi:LogLevel>5</odi:LogLevel> <odi:SyncMode>1</odi:SyncMode> </odi:Command> <odi:Agent> <odi:Host>agenthost</odi:Host> <odi:Port>20910</odi:Port> </odi:Agent> </odi:invokeScenarioRequest> </soapenv:Body> </soapenv:Envelope>
  7. 7. INSTALLING AND INVOKING ORACLE DATA INTEGRATOR (ODI) PUBLIC WEB SERVICES Raastech White Paper  7 / 8 The response of this operation is synchronous and the ODI session number is returned (however, the scenario is executed asynchronously): <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"> <soapenv:Body> <ns1:invokeScenarioResponse xmlns:ns1="xmlns.oracle.com/odi/OdiInvoke/"> <ns1:Ok>true</ns1:Ok> <ns1:SessionNumber>75001</ns1:SessionNumber> <ns1:ErrorMessage/> </ns1:invokeScenarioResponse> </soapenv:Body> </soapenv:Envelope> Execution of the ODI session can be confirmed via the ODI Operator console: Figure 2. ODI Session Execution in the ODI Operator Console
  8. 8. INSTALLING AND INVOKING ORACLE DATA INTEGRATOR (ODI) PUBLIC WEB SERVICES Raastech White Paper  8 / 8 SUMMARY Oracle Data Integrator (ODI) provides comprehensive technical platform capabilities for data distribution, data integration, and data connectivity. Provided with the suite, the ODI Public Web Service provides flexibility and ease of use, particularly for Service Oriented Architecture (SOA) implementations. For example, BPEL processes can be used to perform large document transformation as part of the service. This allows ODI capabilities such as batch processing and database-to-database replication to be easily incorporated as sub-processes within a larger business process. The SOA layer can thus delegate certain functions to ODI for specific data handling needs. About Raastech: Raastech specializes in information technology development and systems integration. Founded in 2009, Raastech provides management consulting, systems development, and integration to both federal agencies and commercial organizations. We provide value to our clients by being innovative and dependable partners in achieving their objectives. For more information, please visit http://www.raastech.com. About the Author: Ahmed Aboulnaga is a Technical Director at Raastech and has extensive experience in Oracle Fusion Middleware. He has been involved in the architecting and implementation of large scale systems involving middleware technologies such as Oracle SOA Suite, Oracle Application Integration Architecture, Oracle Data Integrator, Oracle Integration B2B, Oracle Identity Management, and numerous other Oracle middleware technologies. Raastech White Paper: Overview of the Oracle AIA Foundation Pack PIP Auditor September 2010 Raastech Headquarters: 2201 Cooperative Way, Suite 600 Herndon, VA 20171 www.raastech.com Copyright © 2010 Raastech, Inc. All rights reserved.

×