deploying+a+soa+wsdl+in+oracle+ebs+r12

41
DEPLOYING A SOA WSDL IN ORACLE EBS R12 ENVIRONMENT USING ORACLE SOA INTEGRATED GATEWAY

Upload: rajashree-das

Post on 10-Nov-2015

40 views

Category:

Documents


9 download

DESCRIPTION

SOA

TRANSCRIPT

Deploying a SOA WSDL in Oracle EBS R12 Environment using Oracle SOA integrated Gateway

Deploying a SOA WSDL in Oracle EBS R12 Environment using Oracle SOA integrated GatewayOverviewReview patching for SOA Integrated Gateway related to your version of EBSWriting a custom web serviceHow to generate and deploy Oracle Seeded packagesSOAP UI demo/High Level overviewMobile webservices with SOA Integrated Gateway (Restful services)

LayneReview patching for SOA Intergrated Gateway

Raymond Writing Custom WebserviceHow to generate and deploy Oracle Seeded packagesSOAP UI demo/high level overview

LayneMobile webservices with SOA integrated Gateway (Restful services or JSON)2Patching SOA Integrated GatewayBased on EBS versionOracle E-Business Suite Integrated SOA Gateway Implementation GuideAuthorize the ASADMIN userApply necessary application patchesApply Perl patches and updatesOracle Wallet setup

Raymond- Cover the Oracle Wallet setup3Oracle E-Business Suite Integrated SOA Gateway Implementation Guide

Follow the steps in the Oracle E-Business Integrated SOA Gateway Implementation GuideEnable ASADMINCreate a new Oracle EBS user account?Setting profile options

See oracle Document:http://docs.oracle.com/cd/E18727_01/doc.121/e12169/T511175T517162.htm

Other references:Installing Oracle EBS Integrated SOA Gateway Doc 556540.1Troubleshooting on potential syptoms and corresponding solutions for Oracle EBS Integrated SOA Gateway see the Troubleshooting Guide 726414.1 When Attempting to Create a Custom Integration Repository Loader (*.ildt) File, the "$FND_TOP/bin/irep_parser.pl" Command Fails "Can't Locate Class/MethodMaker.pm" (Doc ID 1079218.1)

Print the guide or save locally?4Screen shot of ASADMIN activition

Apply Application PatchesSOA Integrated Gateway Patches, setup and configuration steps for AdminSukhvir has come up with the following patches needed to Setup and Configure SOA from the following document - Installing Oracle E-Business Suite Integrated SOA Gateway, Release 12 [ID 556540.1]The patch readme files have been placed in - S:\ESC\Dept\Oraproj\patch_history\2013 - Patches\SOA Patches.Upgrade to Oracle Application Server 10g Release 3 (10.1.3) Patch Set 5 (10.1.3.5.0)8920270 - INSTALLING AS 10.1.3.5 REQUIRES OCM RESPONSE FILE WHEN OCM IS NOT CONFIGURED8626084 - PLACEHOLDER BUG TO UPLOAD AS 10.1.3.5 PATCH-SET ON ARU8999551 - REQEUST TO EVALUATE TO REV UP THE JAVA MAILER APIS TO LATEST TO SUPPORT SSLApply the following patches to the Oracle Application Server 10.1.3.5 Oracle Home: Patch 13800972: Merge Request on Top of 10.1.3.1.0 for Bugs 8857799 9223438 12352047 (Patch 13800972 is also compatible with Oracle Application Server 10.1.3.5.0.)Patch 9371120: Web Service Framework Takes More Time for Giving the ResponsePatch 7366746: WLP: Enabling "Use SAML Authority: Verify Signature" Doesn't Require SAML TokenPatch 15914125: Merge Request on Top of 10.1.3.5.1 for Bugs 9187189 9668283 13248533Apply the following Oracle E-Business Suite patches: Patch 13347633:R12.OWF.B: Performance Issues in PIM LoadPatch 13957925:R12.OWF.B: One-off:13029726:12.1.3: SQL Exception in SOA Monitor PagePatch 14063221:R12.OWF.B: Consolidated Fixes on Top of 11688301:R12.OWF.B Patch 9139673:R12.OWF.B: IREP Issues When APPLSYS Schema Name is Changed Patch 13516999:R12.OWF.B: Performance Degradation of Web Service Calls Hosted in R12 SOA Gateway Patch 14741766:R12.TXK.B: Need to Add a New Property for Session in OC4J.PropertiesDBA hit issues and found additional steps below:There was some issues/troubleshooting , please add below more patches/stepsPatch 9157774:R12.OWF.B: BUG 9058430 - MLS Issue with Calling Web Service One-Off for 12.1.2Patch 9070077:R12.OWF.B: One-Off: 9045280:12.1.1:12.1.1:Invoking a Web Service Requires NLS Language When It Should be

Setup/Update PerlApply Perl updates to prepare the parser for use in generating iLDT files for webservices. Setup Perl objects in the environment so we can run objects through the parser to generate iLDT filesDBA run:Metalink Note that Matt provided to usConfigure PERL 1079218.1***a. Find physical path of $FND_TOP/perl. b. Add this physical path in PERL5LIB variable. > export PERL5LIB=$FND_TOP/perl:$PERL5LIBFind the value of $IAS_ORACLE_HOME/perl in your environment,For example /slot/ems1340/appmgr/apps/tech_st/10.1.3/perl. b. Locate the $IAS_ORACLE_HOME/perl/lib/5.8.3/i686-linux-thread-multi/Config.pm. AIX environment: Config.pm was found here/u07/HRPATCH/apps/tech_st/10.1.3/perl/lib/5.8.3/aix-thread-multiOur Config.pm file appeared to be setup correctlyWe don't need to do the remaining steps of c and d since our settings looked okayc. Take backup of this file. d. Replace all occurrences of /ade/smayer_perl58_main_linux/perl58/bin/Linux/Opt with value of $IAS_ORACLE_HOME/perl.Step not necessary because Our Config.pm file appeared to be setup correctlySetup/Update PerlCompress-Raw-Zlib-2.009http://search.cpan.org/~pmqs/Compress-Raw-Zlib-2.009Raymond hit an error getting this to build:make cc_r -c -I./zlib-src -D_ALL_SOURCE -D_ANSI_C_SOURCE -D_POSIX_SOURCE -qmaxmem=16384 -qnoansialias -DUSE_NATIVE_DLOPEN -DNEED_PTHREAD_INIT -I/usr/local/include -q32 -qlonglong -O -DVERSION=\"2.009\" -DXS_VERSION=\"2.009\" "-I/u07/HRPROD/apps/tech_st/10.1.3/perl/lib/5.8.3/aix-thread-multi/CORE" -DGZIP_OS_CODE=3 -DUSE_PPPORT_H Zlib.c"/u07/HRPROD/apps/tech_st/10.1.3/perl/lib/5.8.3/aix-thread-multi/CORE/reentr.inc", line 959.170: 1506-280 (W) Function argument assignment between types "struct {...}**" and "struct passwd**" is not allowed."Zlib.xs", line 231.1: 1506-046 (S) Syntax error.make: 1254-004 The error code from the last command is 1.We were able to get around this by using the more recent version of the Compress-Raw-Zlib-2.060 FileNeed to useCompress-Zlib-2.009http://search.cpan.org/~pmqs/Compress-Zlib-2.009Class-MethodMaker-1.12http://search.cpan.org/~fluffy/Class-MethodMaker-1.12Unzip files:gzip -d Compress-Raw-Zlib-2.009.tar.gztar -xvf Compress-Raw-Zlib-2.009.tarcd Compress-Raw-Zlib-2.009Install files (Repeat for each tar.gz file):perl Makefile.PLmakemake install

Writing a custom web serviceWrite code with annotations included and install in databaseGenerate ILDT fileUpload ILDT file into databaseGenerate WSDLDeploy WSDLSetup AuthenticationTest the Web Service

Package HeaderCREATE OR REPLACE PACKAGE emp_info AS/* this is the emp info package spec *//*# * get employee information * @rep:scope public * @rep:product PER * @rep:lifecycle active * @rep:displayname Get employee information * @rep:compatibility S * @rep:category BUSINESS_ENTITY HR_ORGANIZATION */

/*# * get the employee name * @param p_emp_no employee number * @return employee name or error * @rep:scope public * @rep:lifecycle active* @rep:displayname get full name */FUNCTION get_name ( p_emp_no IN NUMBER) RETURN VARCHAR2;

END emp_info;

> sqlplus apps @emp_info.pkhSQL*Plus: Release 10.1.0.5.0 - Production on Mon Oct 13 13:33:39 2014Copyright (c) 1982, 2005, Oracle. All rights reserved.Connected to:Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit ProductionWith the Partitioning, OLAP, Data Mining and Real Application Testing options

Package created.No errors.Package BodyCREATE OR REPLACE PACKAGE BODY emp_info AS

FUNCTION get_name (p_emp_no IN NUMBER) RETURN VARCHAR2 IS

v_full_name VARCHAR2(50);

BEGIN SELECT full_name INTO v_full_name FROM per_people_f WHERE employee_number = p_emp_no AND sysdate BETWEEN effective_start_date AND effective_end_date;

RETURN(v_full_name); END get_name;END emp_info;> sqlplus apps @emp_info.pkbSQL*Plus: Release 10.1.0.5.0 - Production on Mon Oct 13 13:33:39 2014Copyright (c) 1982, 2005, Oracle. All rights reserved.Connected to:Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit ProductionWith the Partitioning, OLAP, Data Mining and Real Application Testing options

Package body created.No errors.

set serveroutput ondeclare full_name varchar2(50);begin full_name := emp_info.get_name(99999); dbms_output.put_line(full_name);end;

anonymous block completedFife, Robby LIntegration Repository Annotation StandardsCREATE OR REPLACE PACKAGE AS/* this comment line must exist before the annotation begins *//*# * * @rep:scope * @rep:product * @rep:lifecycle * @rep:displayname * @rep:compatibility * @rep:businessevent * @rep:category BUSINESS_ENTITY */For Details See: http://docs.oracle.com/cd/E18727_01/doc.121/e12065/T511473T545912.htm/*# * * @param * @param * @rep:scope * @rep:product * @rep:lifecycle * @rep:displayname * @rep:compatibility * @rep:businessevent */PROCEDURE ( . . .);

/** * * @param * @param * @return * @rep:scope * @rep:product * @rep:lifecycle * @rep:displayname * @rep:compatibility * @rep:businessevent */FUNCTION ( . . .);

Generating ILDT FileLogon to application server and set environment to 10.1.3

$IAS_ORACLE_HOME/perl/bin/perl $FND_TOP/bin/irep_parser.pl -g -v -username= :::=

Example: $IAS_ORACLE_HOME/perl/bin/perl $FND_TOP/bin/irep_parser.pl -g -v -username=sysadmin ihchr:sql:emp_info.pkh:12.0=emp_info.pkh

# Interface Repository Annotation Processor, 12.0.0# Generating annotation output.# Processing file 'emp_info.pkh'.# Using YAPP-based parser.# Found a package-level annotation for 'EMP_INFO'.# Found a detail-level annotation...# Found a function named 'GET_NAME'.# Done all files.Uploading ILDT file to Integration Repository$FND_TOP/bin/FNDLOAD 0 Y UPLOAD $fnd/patch/115/import/wfirep.lct

Example: $FND_TOP/bin/FNDLOAD apps 0 Y UPLOAD $FND_TOP/patch/115/import/wfirep.lct emp_info.pkh.ildt

ORACLE Password:Log filename : L4011440.log

Report filename : O4011440.out

Generate and Deploy WSDLGo to Integrated SOA Gateway -> Integration Repository and click the Search buttonSearch on Internal Name (the package name) and click on the appropriate Web serviceClick Generate WSDLCheck Username TokenClick Deploy buttonClick Select AllClick Create Grant and add the appropriate userGo to Functional Administrator > Core Services > Caching Framework > Global Configuration > Clear All Cache

Use Soapui or other tool to testGet WSDL URL by clicking on View WSDL in the application and go to the bottom of the page and copy the url found on the address location line.In SoapUI go to New Soap ProjectCopy the URL from step above into the Initial WSDL/WADL field and add ?WSDL to the end of the URL. Then click OK.If the wsdl loads into soapui without an error then deploy was successful.Expand method name and then double click Request 1Click Aut and add username and passwordRight click on XML text and select Add WSS Username Token then click OKRemove all question marks from XML and add appropriate values and then click the green arrow to test.

How to generate and deploy WSDL for oracle seeded API Go to Integrated SOA Gateway -> Integration Repository and use the tree to search by product familyThe rest of the steps are the same as previous slide for a custom API