Upgrading Oracle SOA Suite to 11g: A Real-World Success Story

79
Ahmed Aboulnaga Technical Director Raastech, Inc. Upgrading Oracle SOA Suite to 11g A Real-World Success Story

Transcript of Upgrading Oracle SOA Suite to 11g: A Real-World Success Story

Page 1: Upgrading Oracle SOA Suite to 11g: A Real-World Success Story

Ahmed Aboulnaga Technical Director Raastech, Inc.

Upgrading Oracle SOA Suite to 11g A Real-World Success Story

Page 2: Upgrading Oracle SOA Suite to 11g: A Real-World Success Story

Slide 2 of 79 © Raastech, Inc. 2011 | All rights reserved.

1. Introduction

2. Upgrading SOA Suite 10g to 11g

3. Summary

Agenda

1. Understand Upgrade Process

2. Infrastructure Installation

3. Application Server Setup

4. Develop Deployment Process

5. Import Artifacts to MDS

6. AIA Setup

7. Upgrade Projects

8. Post-Upgrade Steps

9. Test

Page 3: Upgrading Oracle SOA Suite to 11g: A Real-World Success Story

Slide 3 of 79 © Raastech, Inc. 2011 | All rights reserved.

Introduction

Page 4: Upgrading Oracle SOA Suite to 11g: A Real-World Success Story

Slide 4 of 79 © Raastech, Inc. 2011 | All rights reserved.

Prior development experience with SOA Suite 10g

Oracle SOA Architect

Oracle SOA Developer

Oracle SOA Suite Administrator

Target Audience

Page 5: Upgrading Oracle SOA Suite to 11g: A Real-World Success Story

Slide 5 of 79 © Raastech, Inc. 2011 | All rights reserved.

This presentation is specific to:

– Oracle WebLogic Server 11g (10.3.4)

– Oracle SOA Suite 11g (11.1.1.4)

– Oracle AIA Foundation Pack (11.1.1.4)

Applicable Versions

Page 6: Upgrading Oracle SOA Suite to 11g: A Real-World Success Story

Slide 6 of 79 © Raastech, Inc. 2011 | All rights reserved.

SOA Suite:

– Business Rules

– Human Workflow

– Oracle Web Services Manager (OWSM)

Other products:

– Business Activity Monitoring (BAM)

– B2B Integration

– Oracle Service Registry (OSR)

– WebCenter

Infrastructure:

– Enterprise Architecture

– Cutover process

Not Addressed in this Presentation

Page 7: Upgrading Oracle SOA Suite to 11g: A Real-World Success Story

Slide 7 of 79 © Raastech, Inc. 2011 | All rights reserved.

The Oracle Upgrade Process

http://download.oracle.com/docs/cd/E17904_01/upgrade.1111/e10127/summary.htm#BABCFIEA

Page 8: Upgrading Oracle SOA Suite to 11g: A Real-World Success Story

Slide 8 of 79 © Raastech, Inc. 2011 | All rights reserved.

1. Understand Upgrade Process

2. Infrastructure Installation

3. Application Server Setup

4. Develop Deployment Process

5. Import Artifacts to MDS

6. AIA Setup

7. Upgrade the Projects

8. Post-Upgrade Steps

9. Test

Overview of Upgrade Process

Infrastructure Setup

Code Upgrade

Preparation

Page 9: Upgrading Oracle SOA Suite to 11g: A Real-World Success Story

Slide 9 of 79 © Raastech, Inc. 2011 | All rights reserved.

1. Understand Upgrade Process

2. Infrastructure Installation

3. Application Server Setup

4. Develop Deployment Process

5. Import Artifacts to MDS

6. AIA Setup

7. Upgrade Projects

8. Post-Upgrade Steps

9. Test

Page 10: Upgrading Oracle SOA Suite to 11g: A Real-World Success Story

Slide 10 of 79 © Raastech, Inc. 2011 | All rights reserved.

Oracle Fusion Middleware Upgrade Planning Guide 11g

Release 1 (11.1.1)

Oracle Application Integration Architecture Foundation

Pack: Migration Guide to Foundation Pack 11gR1

(11.1.1.4.0)

Oracle Fusion Middleware Upgrade Guide for Oracle SOA

Suite, WebCenter, and ADF 11g Release 1 (11.1.1)

Oracle Documentation

– Table 1–1 Table Describing the Steps in the Oracle SOA

Suite and WebCenter Upgrade Process

Page 11: Upgrading Oracle SOA Suite to 11g: A Real-World Success Story

Slide 11 of 79 © Raastech, Inc. 2011 | All rights reserved.

1. Understand Upgrade Process

2. Infrastructure Installation

3. Application Server Setup

4. Develop Deployment Process

5. Import Artifacts to MDS

6. AIA Setup

7. Upgrade Projects

8. Post-Upgrade Steps

9. Test

Page 12: Upgrading Oracle SOA Suite to 11g: A Real-World Success Story

Slide 12 of 79 © Raastech, Inc. 2011 | All rights reserved.

1. Install Oracle Database 11g (11.2.0.x)

2. Install Oracle WebLogic Server 11g (10.3.4)

3. Create SOA database schemas using the RCU 11g

4. Install Oracle SOA Suite 11g (11.1.1.4)

5. Create SOA domain

Infrastructure Installation Overview of Oracle SOA Suite 11g Installation Process

Page 13: Upgrading Oracle SOA Suite to 11g: A Real-World Success Story

Slide 13 of 79 © Raastech, Inc. 2011 | All rights reserved.

A separate infrastructure is required:

– Developers must upgrade code and

deploy it to new infrastructure

– Both infrastructures can point to

same targets and data sources

– Polling services will compete, so

turn them off on old environment

Validation is easy for developers:

– Submit the same payload to old and

new environments

– Confirm that results are identical

Oracle SOA Suite 11g

soa_domain

Infrastructure Installation Development Approach

AdminServer

soa_server1

Oracle SOA Suite 10g

OHS

OC4J_SOA

OC4J_ESBDT

OC4J_WSM

OC4J_GTWY

ADMIN

HOME

Page 14: Upgrading Oracle SOA Suite to 11g: A Real-World Success Story

Slide 14 of 79 © Raastech, Inc. 2011 | All rights reserved.

1. Understand Upgrade Process

2. Infrastructure Installation

3. Application Server Setup

4. Develop Deployment Process

5. Import Artifacts to MDS

6. AIA Setup

7. Upgrade Projects

8. Post-Upgrade Steps

9. Test

Page 15: Upgrading Oracle SOA Suite to 11g: A Real-World Success Story

Slide 15 of 79 © Raastech, Inc. 2011 | All rights reserved.

Data sources and Connection Factories are used by

applications to connect from the application server to a

resource (e.g., AQ, JMS, database, etc.)

For example, your SOA projects may be leveraging

custom created JNDIs:

jdbc/db/PerfTest

eis/db/PerfTest

There is no concept of “MCF properties” in 11g

Application Server Setup Data Sources & Connection Factories

Page 16: Upgrading Oracle SOA Suite to 11g: A Real-World Success Story

Slide 16 of 79 © Raastech, Inc. 2011 | All rights reserved.

Custom data sources are configured in Oracle Application

Server 10g in the EM console by navigating to:

Cluster Topology oc4j_soa Administration JDBC Resources

Application Server Setup 10g Data Sources

Page 17: Upgrading Oracle SOA Suite to 11g: A Real-World Success Story

Slide 17 of 79 © Raastech, Inc. 2011 | All rights reserved.

In WebLogic 11g, navigate to the following page to create

all custom data sources using the same exact names:

soa_domain Services Data Sources

Application Server Setup 11g Data Sources

Page 18: Upgrading Oracle SOA Suite to 11g: A Real-World Success Story

Slide 18 of 79 © Raastech, Inc. 2011 | All rights reserved.

Connection factory creation:

Cluster Topology oc4j_soa Applications default (adapter)

Connection Factories

Application Server Setup 10g Connection Factories

Page 19: Upgrading Oracle SOA Suite to 11g: A Real-World Success Story

Slide 19 of 79 © Raastech, Inc. 2011 | All rights reserved.

Connection factory creation:

soa_domain Deployments (Adapter) Configuration

Outbound Connection Pools

Application Server Setup 11g Connection Factories

Page 20: Upgrading Oracle SOA Suite to 11g: A Real-World Success Story

Slide 20 of 79 © Raastech, Inc. 2011 | All rights reserved.

BPEL domains in 10g are used to group BPEL processes

Each BPEL domain has its own configuration and logging

BPEL domains are created via the BPEL Admin console:

http://soasandbox.raastech.com:7777/BPELAdmin

Application Server Setup 10g BPEL Domains

Page 21: Upgrading Oracle SOA Suite to 11g: A Real-World Success Story

Slide 21 of 79 © Raastech, Inc. 2011 | All rights reserved.

There is no concept of BPEL

domains in 11g

Create a “partition” with the same

name for each BPEL domain

instead

Application Server Setup 11g SOA Partitions

Page 22: Upgrading Oracle SOA Suite to 11g: A Real-World Success Story

Slide 22 of 79 © Raastech, Inc. 2011 | All rights reserved.

Application Server Setup 10g ESB Systems & Service Groups

Systems and Service Groups are

used in ESB 10g to group ESB

services

Services Groups can be cascading

(i.e., a Service Group can have

another Service Group)

Page 23: Upgrading Oracle SOA Suite to 11g: A Real-World Success Story

Slide 23 of 79 © Raastech, Inc. 2011 | All rights reserved.

There is no concept of Systems or

Service Groups in 11g

Create a “partition” for each System

and Service Group

Cascading hierarchies will need to

be flattened

Partition names cannot have spaces

Application Server Setup 11g SOA Partitions

10g:

HR Europe United States

11g:

HR_Europe HR_United_States

Page 24: Upgrading Oracle SOA Suite to 11g: A Real-World Success Story

Slide 24 of 79 © Raastech, Inc. 2011 | All rights reserved.

There is technically 1 domain in 11g, so properties will

affect the entire server

Get all 10g properties for all domains:

$ORACLE_HOME/bpel/domains/<domain>/config/domain.xml

If there are differences, decide how you want to merge

them

Application Server Setup 10g BPEL Domain Properties

Page 25: Upgrading Oracle SOA Suite to 11g: A Real-World Success Story

Slide 25 of 79 © Raastech, Inc. 2011 | All rights reserved.

Manually migrate these properties by updating:

bpel-config.xml

soa-infra-config.xml

Table below shows what’s changed between 10g and 11g:

Application Server Setup 11g BPEL Process Manager Engine Properties

10g Property 11g Property dspInvokeAllocFactor N/A

dspMaxThreads N/A

processCheckSecs N/A

txDatasourceJndi N/A

uddiLocation oracle.soa.uddi.registry.inquiryUrl

uddiPassword oracle.soa.uddi.registry.password

uddiUsername oracle.soa.uddi.registry.username

All other properties are the same.

Page 26: Upgrading Oracle SOA Suite to 11g: A Real-World Success Story

Slide 26 of 79 © Raastech, Inc. 2011 | All rights reserved.

See Oracle documentation

Application Server Setup Run the Oracle Fusion Middleware Upgrade Assistant

Page 27: Upgrading Oracle SOA Suite to 11g: A Real-World Success Story

Slide 27 of 79 © Raastech, Inc. 2011 | All rights reserved.

1. Understand Upgrade Process

2. Infrastructure Installation

3. Application Server Setup

4. Develop Deployment Process

5. Import Artifacts to MDS

6. AIA Setup

7. Upgrade Projects

8. Post-Upgrade Steps

9. Test

Page 28: Upgrading Oracle SOA Suite to 11g: A Real-World Success Story

Slide 28 of 79 © Raastech, Inc. 2011 | All rights reserved.

Make sure that all Ant scripts are ready before proceeding

Oracle SOA Suite 11g ships all Ant scripts that you need

The most important targets needed are:

– Package code

– Deploy code

– Export MDS

– Deploy artifacts to MDS

Ant scripts are too much to get into for this presentation;

contact me for details

Develop Deployment Process Ant Tasks

Page 29: Upgrading Oracle SOA Suite to 11g: A Real-World Success Story

Slide 29 of 79 © Raastech, Inc. 2011 | All rights reserved.

export MW_HOME=/u01/app/middleware

export ORACLE_HOME=$MW_HOME/Oracle_SOA1

export JAVA_HOME=$MW_HOME/jdk160_18

export ANT_HOME=$MW_HOME/modules/org.apache.ant_1.7.1

export PATH=$ANT_HOME/bin:$ANT_HOME/lib:$PATH:.

cd $ORACLE_HOME/bin

ant -f ant-sca-package.xml package

-DcompositeDir=/u01/Hello

-DcompositeName=Hello

-Drevision=1.0

Develop Deployment Process Package Code

Creates a deployable JAR file under the project’s ~/deploy subdirectory.

Page 30: Upgrading Oracle SOA Suite to 11g: A Real-World Success Story

Slide 30 of 79 © Raastech, Inc. 2011 | All rights reserved.

Develop Deployment Process Deploy Code

ant -f ant-sca-deploy.xml deploy

-DserverURL=http://soadev:8001/soa-infra/deployer

-Duser=weblogic

-Dpassword=welcome1

-DsarLocation=/u01/Hello/deploy/sca_Hello_rev1.0.jar

-Dpartition=default

-Doverwrite=true

-DforceDefault=true

-Dconfigplan=/tmp/cfgplan.xml

Deploys the JAR file to the server.

Page 31: Upgrading Oracle SOA Suite to 11g: A Real-World Success Story

Slide 31 of 79 © Raastech, Inc. 2011 | All rights reserved.

Develop Deployment Process Export MDS

ant -f ant-sca-deploy.xml exportSharedData

-DserverURL=http://soadev:8001/soa-infra/deployer

-Duser=weblogic

-Dpassword=welcome1

-DjarFile=/tmp/RaastechMetaData.jar

-Dpattern=**

Exports everything in the MDS to a JAR file.

Unzip the JAR file to browse its contents in a file directory structure.

Page 32: Upgrading Oracle SOA Suite to 11g: A Real-World Success Story

Slide 32 of 79 © Raastech, Inc. 2011 | All rights reserved.

Develop Deployment Process Import MDS

zip -r RaastechMetaData.jar /u01/MDS/RaastechMetaData

ant -f ant-sca-deploy.xml deploy

-Dwl_home=/u01/app/middleware/wlserver_10.3

-Doracle.home=/u01/app/middleware/Oracle_SOA1

-DserverURL=http://soadev:8001/soa-infra/deployer

-Duser=weblogic

-Dpassword=welcome1

-Doverwrite=true

-DsarLocation=/tmp/RaastechMetaData.jar

Imports everything in your JAR file to the MDS, maintaining your exact folder structure.

Page 33: Upgrading Oracle SOA Suite to 11g: A Real-World Success Story

Slide 33 of 79 © Raastech, Inc. 2011 | All rights reserved.

1. Understand Upgrade Process

2. Infrastructure Installation

3. Application Server Setup

4. Develop Deployment Process

5. Import Artifacts to MDS

6. AIA Setup

7. Upgrade Projects

8. Post-Upgrade Steps

9. Test

Page 34: Upgrading Oracle SOA Suite to 11g: A Real-World Success Story

Slide 34 of 79 © Raastech, Inc. 2011 | All rights reserved.

Unlike 10g, all artifacts are now stored in the MDS

Artifacts in the MDS are centralized across all midtiers

Hierarchy in the MDS is similar to a file system layout

Introduction to the MDS

MDS = Meta Data Services = database based repository

Page 35: Upgrading Oracle SOA Suite to 11g: A Real-World Success Story

Slide 35 of 79 © Raastech, Inc. 2011 | All rights reserved.

Browsing the MDS

– Can be browsed through JDeveloper 11g

– Can be exported to the server through EM Console

– Can be exported as a jar file using Ant

Introduction to the MDS

Browse MDS in JDeveloper 11g Browse MDS through file system

Page 36: Upgrading Oracle SOA Suite to 11g: A Real-World Success Story

Slide 36 of 79 © Raastech, Inc. 2011 | All rights reserved.

Prior to upgrading your code, ensure that all artifacts are

imported to the MDS

1. Import all artifacts to MDS

(e.g. DVMs, fault policies, schemas, etc.)

2. Modify code to use MDS-based artifacts

(described later)

Introduction to the MDS

Page 37: Upgrading Oracle SOA Suite to 11g: A Real-World Success Story

Slide 37 of 79 © Raastech, Inc. 2011 | All rights reserved.

Locations of key 10g artifacts:

– BPEL fault policies

$OH/bpel/domains/<domain>/config/fault-bindings.xml

$OH/bpel/domains/<domain>/config/fault-policies/DefaultPolicy.xml

– DVMs

ESB slide

– AIA schemas/wsdls

$APACHE_TOP/htdocs/AIAComponents

– AIAConfigurationProperties.xml

$AIA_HOME/config/AIAConfigurationProperties.xml

Introduction to the MDS

Page 38: Upgrading Oracle SOA Suite to 11g: A Real-World Success Story

Slide 38 of 79 © Raastech, Inc. 2011 | All rights reserved.

Upgrade DVMs DVM Formats

<?xml version='1.0' encoding='UTF-8'?>

<dvm name="Country_Code"

isNew="true">

<description>Codes</description>

<columns>

<column name="shortname"/>

<column name="longname"/>

</columns>

<rows>

<row>

<cell>US</cell>

<cell>United States</cell>

</row>

</rows>

</dvm>

<?xml version='1.0' encoding='UTF-8'?>

<dvm name="Country_Code"

xmlns="http://xmlns.oracle.com/dvm">

<description>Codes</description>

<columns>

<column name="shortname"/>

<column name="longname"/>

</columns>

<rows>

<row>

<cell>US</cell>

<cell>United States</cell>

</row>

</rows>

</dvm>

Currency.xml (10g) Currency.dvm (11g)

Page 39: Upgrading Oracle SOA Suite to 11g: A Real-World Success Story

Slide 39 of 79 © Raastech, Inc. 2011 | All rights reserved.

Option #1:

Export each DVM from the ESB 10g Console

Option #2:

Use the “export.sh” script in ESB 10g to export the

metadata repository

(see chapter 9.3.6.7 in the Oracle Fusion Middleware Upgrade Guide for

Oracle SOA Suite, WebCenter, and ADF 11g Release 1)

Option #3:

Copy the DVMs from the ESB slide

Upgrade DVMs Export 10g

Page 40: Upgrading Oracle SOA Suite to 11g: A Real-World Success Story

Slide 40 of 79 © Raastech, Inc. 2011 | All rights reserved.

Navigate to the ESB slide using Windows Explorer:

http://soasandbox.raastech.com:7777/esb/slide/dvm

Download the 10g DVMs and copy them to your local file

system

Upgrade DVMs Export 10g

Page 41: Upgrading Oracle SOA Suite to 11g: A Real-World Success Story

Slide 41 of 79 © Raastech, Inc. 2011 | All rights reserved.

Option #1:

Execute the “upgrade-xrefdvm” target in the “ant-sca-

upgrade.xml” ant build file

Option #2:

Rename ‘Currency.xml’ to ‘Currency.dvm’:

rename .xml .dvm *.xml

Perform a global search-and-replace to change the <dvm>

attribute:

find . -type f -exec sed -i

"s%isNew=\"true\"%xmlns=\"http://xmlns.oracle

.com/dvm\"%" {} \;

Upgrade DVMs Convert 10g DVMs to 11g Format

Page 42: Upgrading Oracle SOA Suite to 11g: A Real-World Success Story

Slide 42 of 79 © Raastech, Inc. 2011 | All rights reserved.

1. Identify all BPEL domains that have fault policies:

$OH/bpel/domains/default/config/fault-bindings.xml

$OH/bpel/domains/default/config/fault-policies/DefaultPolicy.xml

Import Fault Policies 10g BPEL Fault Policies

Page 43: Upgrading Oracle SOA Suite to 11g: A Real-World Success Story

Slide 43 of 79 © Raastech, Inc. 2011 | All rights reserved.

1. Modify the 10g fault-bindings.xml

2. Import the fault policies to the MDS using Ant

Import Fault Policies 11g BPEL Fault Policies

Page 44: Upgrading Oracle SOA Suite to 11g: A Real-World Success Story

Slide 44 of 79 © Raastech, Inc. 2011 | All rights reserved.

10g fault-bindings.xml

11g fault-bindings.xml

Import Fault Policies Fault Bindings

<?xml version="1.0" encoding="UTF-8"?>

<faultPolicyBindings version="2.0.1"

xmlns="http://schemas.oracle.com/bpel/faultpolicy"

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

<process faultPolicy="DefaultPolicy"/>

</faultPolicyBindings>

<?xml version="1.0" encoding="UTF-8"?>

<faultPolicyBindings version="3.0"

xmlns="http://schemas.oracle.com/bpel/faultpolicy"

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

<composite faultPolicy="DefaultPolicy"/>

</faultPolicyBindings>

Page 45: Upgrading Oracle SOA Suite to 11g: A Real-World Success Story

Slide 45 of 79 © Raastech, Inc. 2011 | All rights reserved.

10g DefaultPolicy.xml

11g DefaultPolicy.xml

Import Fault Policies Fault Policies

<?xml version="1.0" encoding="UTF-8"?>

<faultPolicy version="2.0.1" id="DefaultPolicy"

xmlns:env="http://schemas.xmlsoap.org/soap/envelope/"

xmlns:xs="http://www.w3.org/2001/XMLSchema"

xmlns="http://schemas.oracle.com/bpel/faultpolicy"

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

<?xml version="1.0" encoding="UTF-8"?>

<faultPolicies xmlns="http://schemas.oracle.com/bpel/faultpolicy"

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

<faultPolicy version="3.0" id="DefaultPolicy"

xmlns:env="http://schemas.xmlsoap.org/soap/envelope/"

xmlns:xs="http://www.w3.org/2001/XMLSchema"

xmlns="http://schemas.oracle.com/bpel/faultpolicy"

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

Page 46: Upgrading Oracle SOA Suite to 11g: A Real-World Success Story

Slide 46 of 79 © Raastech, Inc. 2011 | All rights reserved.

Import Schemas and WSDLs Import Custom Schemas & WSDLs

If you have shared schemas and/or WSDLs, import them to

the MDS

Maintain the same directory structure

If <imports> are fully qualified HTTP references, modify

them to local references accordingly

AIA schemas and WSDLs do not need to be imported, as

the new 11g versions are automatically installed to the MDS

http://server:7777/Account/Account.xsd

http://server:7777/Custom/CustomAccount.xsd

oramds:/apps/CustomMetaData/xsd/Account/Account.xsd

oramds:/apps/CustomMetaData/xsd/Custom/CustomAccount.xsd

Page 47: Upgrading Oracle SOA Suite to 11g: A Real-World Success Story

Slide 47 of 79 © Raastech, Inc. 2011 | All rights reserved.

1. Understand Upgrade Process

2. Infrastructure Installation

3. Application Server Setup

4. Develop Deployment Process

5. Import Artifacts to MDS

6. AIA Setup

7. Upgrade Projects

8. Post-Upgrade Steps

9. Test

Page 48: Upgrading Oracle SOA Suite to 11g: A Real-World Success Story

Slide 48 of 79 © Raastech, Inc. 2011 | All rights reserved.

1. Get a copy of the AIAConfigurationProperties.xml file from

your AIA 2.x server:

$AIA_HOME/config/AIAConfigurationProperties.xml

Migrate AIA Setup & Configuration 10g AIAConfigurationProperties.xml

Page 49: Upgrading Oracle SOA Suite to 11g: A Real-World Success Story

Slide 49 of 79 © Raastech, Inc. 2011 | All rights reserved.

1. Export the MDS, and get a copy of the 11g

AIAConfigurationProperties.xml file: oramds:/apps/AIAMetaData/config/AIAConfigurationProperties.xml

2. Manually copy your custom configuration to the 11g file

3. Change all hostname/port references

4. Re-import the file to the MDS using Ant

Migrate AIA Setup & Configuration 11g AIAConfigurationProperties.xml

AIA FP 11.1.1.4 changes the name of 2 properties, so inspect and compare the 10g and 11g files.

Page 50: Upgrading Oracle SOA Suite to 11g: A Real-World Success Story

Slide 50 of 79 © Raastech, Inc. 2011 | All rights reserved.

1. Login to the AIA 10g console at:

http://soa10gdev:7777/AIA

2. Navigate to “Setup Go System”, and note the

configuration settings there

3. Navigate to the AIA 11g console at and login as a

WebLogic user that has the “AIAApplicationUser” group:

http://soa10gdev:8001/AIA

4. Navigate to the same screen and configure the settings

identically

Migrate AIA Setup & Configuration AIA Configuration

Page 51: Upgrading Oracle SOA Suite to 11g: A Real-World Success Story

Slide 51 of 79 © Raastech, Inc. 2011 | All rights reserved.

Export your CAVS test cases from 10g

Navigate to the AIA 11g console at and login as a

WebLogic user that has the “AIAApplicationUser” group:

http://soa11gdev:8001/AIA

Under the “Definitions” tab, select “Import”, and choose the

files to be imported, one at a time

Migrate AIA Setup & Configuration CAVS Test Cases

Page 52: Upgrading Oracle SOA Suite to 11g: A Real-World Success Story

Slide 52 of 79 © Raastech, Inc. 2011 | All rights reserved.

1. Understand Upgrade Process

2. Infrastructure Installation

3. Application Server Setup

4. Develop Deployment Process

5. Import Artifacts to MDS

6. AIA Setup

7. Upgrade Projects

8. Post-Upgrade Steps

9. Test

Page 53: Upgrading Oracle SOA Suite to 11g: A Real-World Success Story

Slide 53 of 79 © Raastech, Inc. 2011 | All rights reserved.

1. Open 10g project in JDeveloper 10g

2. Ensure that any partner links are migrated in order of

dependency

3. Modify partner link endpoints to point to the 11g service

10g:

http://soa10g:7777/orabpel/default/HelloWorld2/Hel

loWorld2?wsdl

11g:

http://soa11g:8001/soa_infra/services/default/Hell

oWorld2/HelloWorld2_ep?wsdl

Upgrade BPEL Projects Modify Project in JDeveloper 10g

-

Page 54: Upgrading Oracle SOA Suite to 11g: A Real-World Success Story

Slide 54 of 79 © Raastech, Inc. 2011 | All rights reserved.

1. Open project in JDeveloper 11g

2. Navigate through the Migration Wizard

3. If an error occurs, the Migration Wizard does not give a

specific reason for the failure of the migration.

In that case, check the log at:

c:\Oracle\Middleware\jdeveloper\upgrade\logs\*.*

Upgrade BPEL Projects Migrate Project in JDeveloper 11g

Page 55: Upgrading Oracle SOA Suite to 11g: A Real-World Success Story

Slide 55 of 79 © Raastech, Inc. 2011 | All rights reserved.

1. Open 10g project in JDeveloper 10g

2. Ensure that any partner links are migrated in order of

dependency

3. If using SOAP service as your target, modify partner link

endpoint to point to the 11g service (similar to BPEL)

4. If using metadata repository as your lookup, create a

SOAP service

Upgrade ESB Projects Modify Project in JDeveloper 10g

Too much to explain here, but the idea is to make sure your ESB 10g routing rule is invoking a SOAP service prior to migration.

Page 56: Upgrading Oracle SOA Suite to 11g: A Real-World Success Story

Slide 56 of 79 © Raastech, Inc. 2011 | All rights reserved.

5. In JDeveloper 10g, ensure that the “Invocable from an

external web service” is selected for all ESB routing

services that you want exposed as a WSDL in 11g

Upgrade ESB Projects Modify Project in JDeveloper 10g

Page 57: Upgrading Oracle SOA Suite to 11g: A Real-World Success Story

Slide 57 of 79 © Raastech, Inc. 2011 | All rights reserved.

6. Open all .esbsvc files.

7. Delete all “parent” lines that have lines similar to the

following:

<parent guid="96DD76C0971311DABF1A87858E4395A7"

qname="DefaultSystem" type="system"/>

8. Change all remaining “qname” references and remove the

system and service groups as follows:

OLD: qname="DefaultSystem.Accounting.HelloWorld"

NEW: qname="HelloWorld"

Upgrade ESB Projects Modify Project in JDeveloper 10g

Page 58: Upgrading Oracle SOA Suite to 11g: A Real-World Success Story

Slide 58 of 79 © Raastech, Inc. 2011 | All rights reserved.

Upgrade ESB Projects Migrate Project in JDeveloper 11g

1. Open project in JDeveloper 11g

2. Navigate through the Migration Wizard

3. If an error occurs, the Migration Wizard does not give a

specific reason for the failure of the migration.

In that case, check the log at:

c:\Oracle\Middleware\jdeveloper\upgrade\logs\*.*

Page 59: Upgrading Oracle SOA Suite to 11g: A Real-World Success Story

Slide 59 of 79 © Raastech, Inc. 2011 | All rights reserved.

1. Understand Upgrade Process

2. Infrastructure Installation

3. Application Server Setup

4. Develop Deployment Process

5. Import Artifacts to MDS

6. AIA Setup

7. Upgrade Projects

8. Post-Upgrade Steps

9. Test

Page 60: Upgrading Oracle SOA Suite to 11g: A Real-World Success Story

Slide 60 of 79 © Raastech, Inc. 2011 | All rights reserved.

Every DVM lookup must be manually modified

10g:

orcl:lookup-dvm ("Currency", "Country", "US",

"Currency", "USD")

11g:

dvm:lookupValue

("oramds:/apps/dvm/Currency.dvm", "Country",

"US", "Currency", "USD")

Post-Upgrade Steps Modify DVM References

Page 61: Upgrading Oracle SOA Suite to 11g: A Real-World Success Story

Slide 61 of 79 © Raastech, Inc. 2011 | All rights reserved.

Every schema import must be manually modified

Ideally, you should use ORAMDS references instead of

HTTP references

No more hardcoding of hostnames and ports

10g:

<schema

import="http://soa10g:7777/AIAComponents/EnterpriseObjectLibrar

y/Core/EBO/CustomerParty/V2/CustomerPartyEBM.xsd">

11g:

<schema

import="oramds:/apps/AIAMetaData/AIAComponents/EnterpriseObject

Library/Core/EBO/CustomerParty/V2/CustomerPartyEBM.xsd">

Post-Upgrade Steps Modify Schema Imports

Page 62: Upgrading Oracle SOA Suite to 11g: A Real-World Success Story

Slide 62 of 79 © Raastech, Inc. 2011 | All rights reserved.

WSDL imports from the MDS have caused issues, so test

it out before considering referencing them from the MDS

Post-Upgrade Steps WSDL Imports

Page 63: Upgrading Oracle SOA Suite to 11g: A Real-World Success Story

Slide 63 of 79 © Raastech, Inc. 2011 | All rights reserved.

There is no concept of a global fault policy in SOA Suite 11g

Add the fault policy and binding manually to composite.xml

<property name="oracle.composite.faultPolicyFile">

oramds:/apps/AIAMetaData/faultPolicies/fault-policy.xml

</property>

<property name="oracle.composite.faultBindingFile">

oramds:/apps/AIAMetaData/faultPolicies/fault-bindings.xml

</property>

Post-Upgrade Steps Add Fault Policies & Bindings

If you have more than one fault policy, you will have to decide which one you want your composite to reference.

Page 64: Upgrading Oracle SOA Suite to 11g: A Real-World Success Story

Slide 64 of 79 © Raastech, Inc. 2011 | All rights reserved.

Post-Upgrade Steps Migrate bpel.xml Properties

Migrate properties in bpel.xml to composite.xml

10g bpel.xml

<property name="retryInterval">60</property>

11g composite.xml

<property name="jca.retry.interval">60</property>

bpel.xml (10g) composite.xml (11g) <property name="retryInterval">60</property> <property name="jca.retry.interval" type="xs:int"

many="false" override="may">60</property> <property name="retryCount">60</property> <property name="jca.retry.count" type="xs:int" many="false”

override="may">60</property> <property name="retryBackoff">60</property> <property name="jca.retry.backoff" type="xs:int"

many="false" override="may">60</property>

Page 65: Upgrading Oracle SOA Suite to 11g: A Real-World Success Story

Slide 65 of 79 © Raastech, Inc. 2011 | All rights reserved.

Choose the “Monitor” button to edit sensor detail:

Modify the BPEL Sensor Action and modify the JMS

Connection Factory:

Publish Type: JMS Queue

JMS Connection Factory: weblogic.jms.ConnectionFactory

Publish Target: jms/MyQueue

Post-Upgrade Steps Modify BPEL Sensors Connection Factory References

Page 66: Upgrading Oracle SOA Suite to 11g: A Real-World Success Story

Slide 66 of 79 © Raastech, Inc. 2011 | All rights reserved.

Filter migration does not work correctly

Compare all 11g Mediator filters to the 10g ESB ones

Problems include:

– Incorrect migration of logical operators (e.g., AND, OR)

– Missing brackets; changes the meaning of the filter

– Incorrect XPath migration

Post-Upgrade Steps Review Mediator Filters

Page 67: Upgrading Oracle SOA Suite to 11g: A Real-World Success Story

Slide 67 of 79 © Raastech, Inc. 2011 | All rights reserved.

Some header functions are obsoleted in 11g:

10g 11g

ehdr:setOutboundHeader mhdr:setProperty

ehdr:getRequestHeader mhdr:getProperty

Example of manual migration of dynamic routing:

10g

select="ehdr:setOutboundHeader('/shdr:ESBHeader/shdr:location',

$LocationIn, 'shdr=http://xmlns.oracle.com/esb;')"

11g

select="mhdr:setProperty('out.property.endpointURI',$LocationIn)"

Post-Upgrade Steps Review and Modify Header Functions

Page 68: Upgrading Oracle SOA Suite to 11g: A Real-World Success Story

Slide 68 of 79 © Raastech, Inc. 2011 | All rights reserved.

getDomainId() behaves differently, since there is no

longer the concept of BPEL domains

Returns NULL

Post-Upgrade Steps getDomainId() Behavior

Page 69: Upgrading Oracle SOA Suite to 11g: A Real-World Success Story

Slide 69 of 79 © Raastech, Inc. 2011 | All rights reserved.

Go through the entire Chapter 9 of the Oracle Fusion

Middleware Upgrade Guide for Oracle SOA Suite,

WebCenter, and ADF 11g Release 1 (11.1.1)

No full documentation on all cases you will encounter

Make sure to test your projects!

Post-Upgrade Steps Other Stuff?

Page 70: Upgrading Oracle SOA Suite to 11g: A Real-World Success Story

Slide 70 of 79 © Raastech, Inc. 2011 | All rights reserved.

1. Understand Upgrade Process

2. Infrastructure Installation

3. Application Server Setup

4. Develop Deployment Process

5. Import Artifacts to MDS

6. AIA Setup

7. Upgrade Projects

8. Post-Upgrade Steps

9. Test

Page 71: Upgrading Oracle SOA Suite to 11g: A Real-World Success Story

Slide 71 of 79 © Raastech, Inc. 2011 | All rights reserved.

1. Deploy code to 11g environment

a. Compilation errors will reveal a lot

b. Deployment errors will reveal a lot

2. Test same payloads on both 10g and 11g

a. Use the consoles or a client tool such as SoapUI

b. Compare results

Test Test! Test! Test!

Page 72: Upgrading Oracle SOA Suite to 11g: A Real-World Success Story

Slide 72 of 79 © Raastech, Inc. 2011 | All rights reserved.

Summary

Page 73: Upgrading Oracle SOA Suite to 11g: A Real-World Success Story

Slide 73 of 79 © Raastech, Inc. 2011 | All rights reserved.

1. Understand Upgrade Process – Prepare yourself by reading Oracle docs

2. Infrastructure Installation – Install SOA Suite 11g

– Keep existing SOA Suite 10g environment

3. Application Server Setup – Data Sources & Connection Factories

– 10g BPEL Domains to 11g Partitions

– 10g ESB Systems & Service Groups

– OFM Upgrade Assistant

Summary Recap of Upgrade Process

4. Develop Deployment Process – Leverage Ant scripts in SOA Suite 11g

5. Import Artifacts to MDS – Migrate BPEL fault policies & bindings

– Migrate DVMs

– Import custom schemas/wsdls to MDS

6. AIA Setup – Configure

AIAConfigurationProperties.xml

– AIA Console Configuration

– Import CAVS test cases

Page 74: Upgrading Oracle SOA Suite to 11g: A Real-World Success Story

Slide 74 of 79 © Raastech, Inc. 2011 | All rights reserved.

Summary Recap of Upgrade Process

9. Test – Test services in SOA Suite 10g

– Test services in SOA Suite 11g

– Compare results

7. Upgrade Projects – Modify endpoints in JDeveloper 10g

– Update ESB projects

– Migrate project in JDeveloper 11g

8. Post-Upgrade Steps – Modify DVM lookups

– Modify schema imports

– Add fault policies & bindings to code

– Migrate bpel.xml properties

– Modify BPEL sensors

– Manually verify Mediator filters

– Manually update header functions

– Check usage of getDomainId()

– Read Upgrade Guide

These “Recap” slides are perhaps the most important slides in the presentation.

Page 75: Upgrading Oracle SOA Suite to 11g: A Real-World Success Story

Slide 75 of 79 © Raastech, Inc. 2011 | All rights reserved.

The Good:

– As a SOA developer, transitioning from 10g to 11g is not

complicated

– Simpler deployment process in 11g

– Cutover can be seamless if done right

The Bad:

– Every SOA Suite 11g upgrade project has been painful

– No “end all” documentation

– Prepare to encounter issues no one else has seen before

Conclusion

Page 76: Upgrading Oracle SOA Suite to 11g: A Real-World Success Story

Slide 76 of 79 © Raastech, Inc. 2011 | All rights reserved.

Use the Recap slides as a starting point

This presentation does not cover everything, but use it

augment Oracle’s existing documentation

The SOA Suite 10g to 11g upgrade should be treated as

a project

Summary Final Thoughts

Page 77: Upgrading Oracle SOA Suite to 11g: A Real-World Success Story

Slide 77 of 79 © Raastech, Inc. 2011 | All rights reserved.

Summary References – Oracle Documentation

Oracle Fusion Middleware Developer’s Guide for Oracle SOA Suite 11g

Release 1 (11.1.1)

http://download.oracle.com/docs/cd/E12839_01/integration.1111/e10224/title.h

tm

Oracle Fusion Middleware Upgrade Planning Guide 11g Release 1 (11.1.1)

http://download.oracle.com/docs/cd/E17904_01/upgrade.1111/e10125/toc.htm

Oracle Fusion Middleware Upgrade Guide for Oracle SOA Suite, WebCenter,

and ADF 11g Release 1 (11.1.1)

http://download.oracle.com/docs/cd/E17904_01/upgrade.1111/e10127/toc.htm

Oracle Application Integration Architecture Foundation Pack: Migration Guide

to Foundation Pack 11gR1 (11.1.1.4.0)

http://download.oracle.com/docs/cd/E17904_01/doc.1111/e17361/toc.htm

Page 78: Upgrading Oracle SOA Suite to 11g: A Real-World Success Story

Slide 78 of 79 © Raastech, Inc. 2011 | All rights reserved.

Summary References – Technical Notes

Quickly installing Oracle Fusion Middleware 11g and Oracle SOA Suite 11g

http://blog.raastech.com/2010/09/quickest-installation-of-oracle-fusion.html

Upgrading to SOA Suite 11gR1 PS3 (11.1.1.4.0)

http://blog.raastech.com/2011/01/upgrading-to-soa-suite-11gr1-ps3-111140.html

Creating an MDS connection through JDeveloper 11g

http://blog.raastech.com/2010/10/creating-mds-connection-through.html

Converting DVMs from Oracle SOA Suite 10g to 11g

http://blog.raastech.com/2010/10/converting-dvms-from-oracle-soa-suite.html

Create a read-only database account to the MDS

http://blog.raastech.com/2010/12/create-read-only-database-account-to.html

Page 79: Upgrading Oracle SOA Suite to 11g: A Real-World Success Story

Slide 79 of 79 © Raastech, Inc. 2011 | All rights reserved.

Contact Information

Ahmed Aboulnaga

Technical Director

[email protected]