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.
Ahmed Aboulnaga
Technical Director
Raastech, Inc.
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
Ag...
Slide 3 of 79 © Raastech, Inc. 2011 | All rights reserved.
Introduction
Slide 4 of 79 © Raastech, Inc. 2011 | All rights reserved.
 Prior development experience with SOA Suite 10g
 Oracle SOA ...
Slide 5 of 79 © Raastech, Inc. 2011 | All rights reserved.
 This presentation is specific to:
– Oracle WebLogic Server 11...
Slide 6 of 79 © Raastech, Inc. 2011 | All rights reserved.
 SOA Suite:
– Business Rules
– Human Workflow
– Oracle Web Ser...
Slide 7 of 79 © Raastech, Inc. 2011 | All rights reserved.
The Oracle Upgrade Process
http://download.oracle.com/docs/cd/E...
Slide 8 of 79 © Raastech, Inc. 2011 | All rights reserved.
1. Understand Upgrade Process
2. Infrastructure Installation
3....
Slide 9 of 79 © Raastech, Inc. 2011 | All rights reserved.
1. Understand Upgrade Process
2. Infrastructure Installation
3....
Slide 10 of 79 © Raastech, Inc. 2011 | All rights reserved.
 Oracle Fusion Middleware Upgrade Planning Guide 11g
Release ...
Slide 11 of 79 © Raastech, Inc. 2011 | All rights reserved.
1. Understand Upgrade Process
2. Infrastructure Installation
3...
Slide 12 of 79 © Raastech, Inc. 2011 | All rights reserved.
1. Install Oracle Database 11g (11.2.0.x)
2. Install Oracle We...
Slide 13 of 79 © Raastech, Inc. 2011 | All rights reserved.
 A separate infrastructure is required:
– Developers must upg...
Slide 14 of 79 © Raastech, Inc. 2011 | All rights reserved.
1. Understand Upgrade Process
2. Infrastructure Installation
3...
Slide 15 of 79 © Raastech, Inc. 2011 | All rights reserved.
 Data sources and Connection Factories are used by
applicatio...
Slide 16 of 79 © Raastech, Inc. 2011 | All rights reserved.
 Custom data sources are configured in Oracle Application
Ser...
Slide 17 of 79 © Raastech, Inc. 2011 | All rights reserved.
 In WebLogic 11g, navigate to the following page to create
al...
Slide 18 of 79 © Raastech, Inc. 2011 | All rights reserved.
 Connection factory creation:
Cluster Topology  oc4j_soa  A...
Slide 19 of 79 © Raastech, Inc. 2011 | All rights reserved.
 Connection factory creation:
soa_domain  Deployments  (Ada...
Slide 20 of 79 © Raastech, Inc. 2011 | All rights reserved.
 BPEL domains in 10g are used to group BPEL processes
 Each ...
Slide 21 of 79 © Raastech, Inc. 2011 | All rights reserved.
 There is no concept of BPEL
domains in 11g
 Create a “parti...
Slide 22 of 79 © Raastech, Inc. 2011 | All rights reserved.
Application Server Setup
10g ESB Systems & Service Groups
 Sy...
Slide 23 of 79 © Raastech, Inc. 2011 | All rights reserved.
 There is no concept of Systems or
Service Groups in 11g
 Cr...
Slide 24 of 79 © Raastech, Inc. 2011 | All rights reserved.
 There is technically 1 domain in 11g, so properties will
aff...
Slide 25 of 79 © Raastech, Inc. 2011 | All rights reserved.
 Manually migrate these properties by updating:
bpel-config.x...
Slide 26 of 79 © Raastech, Inc. 2011 | All rights reserved.
 See Oracle documentation
Application Server Setup
Run the Or...
Slide 27 of 79 © Raastech, Inc. 2011 | All rights reserved.
1. Understand Upgrade Process
2. Infrastructure Installation
3...
Slide 28 of 79 © Raastech, Inc. 2011 | All rights reserved.
 Make sure that all Ant scripts are ready before proceeding
...
Slide 29 of 79 © Raastech, Inc. 2011 | All rights reserved.
export MW_HOME=/u01/app/middleware
export ORACLE_HOME=$MW_HOME...
Slide 30 of 79 © Raastech, Inc. 2011 | All rights reserved.
Develop Deployment Process
Deploy Code
ant -f ant-sca-deploy.x...
Slide 31 of 79 © Raastech, Inc. 2011 | All rights reserved.
Develop Deployment Process
Export MDS
ant -f ant-sca-deploy.xm...
Slide 32 of 79 © Raastech, Inc. 2011 | All rights reserved.
Develop Deployment Process
Import MDS
zip -r RaastechMetaData....
Slide 33 of 79 © Raastech, Inc. 2011 | All rights reserved.
1. Understand Upgrade Process
2. Infrastructure Installation
3...
Slide 34 of 79 © Raastech, Inc. 2011 | All rights reserved.
 Unlike 10g, all artifacts are now stored in the MDS
 Artifa...
Slide 35 of 79 © Raastech, Inc. 2011 | All rights reserved.
 Browsing the MDS
– Can be browsed through JDeveloper 11g
– C...
Slide 36 of 79 © Raastech, Inc. 2011 | All rights reserved.
 Prior to upgrading your code, ensure that all artifacts are
...
Slide 37 of 79 © Raastech, Inc. 2011 | All rights reserved.
 Locations of key 10g artifacts:
– BPEL fault policies
$OH/bp...
Slide 38 of 79 © Raastech, Inc. 2011 | All rights reserved.
Upgrade DVMs
DVM Formats
<?xml version='1.0' encoding='UTF-8'?...
Slide 39 of 79 © Raastech, Inc. 2011 | All rights reserved.
Option #1:
 Export each DVM from the ESB 10g Console
Option #...
Slide 40 of 79 © Raastech, Inc. 2011 | All rights reserved.
 Navigate to the ESB slide using Windows Explorer:
http://soa...
Slide 41 of 79 © Raastech, Inc. 2011 | All rights reserved.
Option #1:
 Execute the “upgrade-xrefdvm” target in the “ant-...
Slide 42 of 79 © Raastech, Inc. 2011 | All rights reserved.
1. Identify all BPEL domains that have fault policies:
$OH/bpe...
Slide 43 of 79 © Raastech, Inc. 2011 | All rights reserved.
1. Modify the 10g fault-bindings.xml
2. Import the fault polic...
Slide 44 of 79 © Raastech, Inc. 2011 | All rights reserved.
 10g fault-bindings.xml
 11g fault-bindings.xml
Import Fault...
Slide 45 of 79 © Raastech, Inc. 2011 | All rights reserved.
 10g DefaultPolicy.xml
 11g DefaultPolicy.xml
Import Fault P...
Slide 46 of 79 © Raastech, Inc. 2011 | All rights reserved.
Import Schemas and WSDLs
Import Custom Schemas & WSDLs
 If yo...
Slide 47 of 79 © Raastech, Inc. 2011 | All rights reserved.
1. Understand Upgrade Process
2. Infrastructure Installation
3...
Slide 48 of 79 © Raastech, Inc. 2011 | All rights reserved.
1. Get a copy of the AIAConfigurationProperties.xml file from
...
Slide 49 of 79 © Raastech, Inc. 2011 | All rights reserved.
1. Export the MDS, and get a copy of the 11g
AIAConfigurationP...
Slide 50 of 79 © Raastech, Inc. 2011 | All rights reserved.
1. Login to the AIA 10g console at:
http://soa10gdev:7777/AIA
...
Slide 51 of 79 © Raastech, Inc. 2011 | All rights reserved.
 Export your CAVS test cases from 10g
 Navigate to the AIA 1...
Slide 52 of 79 © Raastech, Inc. 2011 | All rights reserved.
1. Understand Upgrade Process
2. Infrastructure Installation
3...
Slide 53 of 79 © Raastech, Inc. 2011 | All rights reserved.
1. Open 10g project in JDeveloper 10g
2. Ensure that any partn...
Slide 54 of 79 © Raastech, Inc. 2011 | All rights reserved.
1. Open project in JDeveloper 11g
2. Navigate through the Migr...
Slide 55 of 79 © Raastech, Inc. 2011 | All rights reserved.
1. Open 10g project in JDeveloper 10g
2. Ensure that any partn...
Slide 56 of 79 © Raastech, Inc. 2011 | All rights reserved.
5. In JDeveloper 10g, ensure that the “Invocable from an
exter...
Slide 57 of 79 © Raastech, Inc. 2011 | All rights reserved.
6. Open all .esbsvc files.
7. Delete all “parent” lines that h...
Slide 58 of 79 © Raastech, Inc. 2011 | All rights reserved.
Upgrade ESB Projects
Migrate Project in JDeveloper 11g
1. Open...
Slide 59 of 79 © Raastech, Inc. 2011 | All rights reserved.
1. Understand Upgrade Process
2. Infrastructure Installation
3...
Slide 60 of 79 © Raastech, Inc. 2011 | All rights reserved.
 Every DVM lookup must be manually modified
10g:
orcl:lookup-...
Slide 61 of 79 © Raastech, Inc. 2011 | All rights reserved.
 Every schema import must be manually modified
 Ideally, you...
Slide 62 of 79 © Raastech, Inc. 2011 | All rights reserved.
 WSDL imports from the MDS have caused issues, so test
it out...
Slide 63 of 79 © Raastech, Inc. 2011 | All rights reserved.
 There is no concept of a global fault policy in SOA Suite 11...
Slide 64 of 79 © Raastech, Inc. 2011 | All rights reserved.
Post-Upgrade Steps
Migrate bpel.xml Properties
 Migrate prope...
Slide 65 of 79 © Raastech, Inc. 2011 | All rights reserved.
 Choose the “Monitor” button to edit sensor detail:
 Modify ...
Slide 66 of 79 © Raastech, Inc. 2011 | All rights reserved.
 Filter migration does not work correctly
 Compare all 11g M...
Slide 67 of 79 © Raastech, Inc. 2011 | All rights reserved.
 Some header functions are obsoleted in 11g:
10g 11g
ehdr:set...
Slide 68 of 79 © Raastech, Inc. 2011 | All rights reserved.
 getDomainId() behaves differently, since there is no
longer ...
Slide 69 of 79 © Raastech, Inc. 2011 | All rights reserved.
 Go through the entire Chapter 9 of the Oracle Fusion
Middlew...
Slide 70 of 79 © Raastech, Inc. 2011 | All rights reserved.
1. Understand Upgrade Process
2. Infrastructure Installation
3...
Slide 71 of 79 © Raastech, Inc. 2011 | All rights reserved.
1. Deploy code to 11g environment
a. Compilation errors will r...
Slide 72 of 79 © Raastech, Inc. 2011 | All rights reserved.
Summary
Slide 73 of 79 © Raastech, Inc. 2011 | All rights reserved.
1. Understand Upgrade Process
– Prepare yourself by reading Or...
Slide 74 of 79 © Raastech, Inc. 2011 | All rights reserved.
Summary
Recap of Upgrade Process
9. Test
– Test services in SO...
Slide 75 of 79 © Raastech, Inc. 2011 | All rights reserved.
 The Good:
– As a SOA developer, transitioning from 10g to 11...
Slide 76 of 79 © Raastech, Inc. 2011 | All rights reserved.
 Use the Recap slides as a starting point
 This presentation...
Slide 77 of 79 © Raastech, Inc. 2011 | All rights reserved.
Summary
References – Oracle Documentation
 Oracle Fusion Midd...
Slide 78 of 79 © Raastech, Inc. 2011 | All rights reserved.
Summary
References – Technical Notes
 Quickly installing Orac...
Slide 79 of 79 © Raastech, Inc. 2011 | All rights reserved.
Contact Information
Ahmed Aboulnaga
Technical Director
ahmed.a...
Upcoming SlideShare
Loading in …5
×

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

567 views

Published on

Collaborate 11

Published in: Technology
  • Be the first to comment

  • Be the first to like this

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

  1. 1. Ahmed Aboulnaga Technical Director Raastech, Inc. Upgrading Oracle SOA Suite to 11g A Real-World Success Story
  2. 2. 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
  3. 3. Slide 3 of 79 © Raastech, Inc. 2011 | All rights reserved. Introduction
  4. 4. 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
  5. 5. 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
  6. 6. 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
  7. 7. 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
  8. 8. 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
  9. 9. 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
  10. 10. 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
  11. 11. 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
  12. 12. 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
  13. 13. 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
  14. 14. 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
  15. 15. 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 
  16. 16. 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
  17. 17. 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
  18. 18. 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
  19. 19. 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
  20. 20. 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
  21. 21. 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
  22. 22. 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)
  23. 23. 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
  24. 24. 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
  25. 25. 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.
  26. 26. Slide 26 of 79 © Raastech, Inc. 2011 | All rights reserved.  See Oracle documentation Application Server Setup Run the Oracle Fusion Middleware Upgrade Assistant
  27. 27. 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
  28. 28. 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
  29. 29. 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.
  30. 30. 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.
  31. 31. 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.
  32. 32. 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.
  33. 33. 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
  34. 34. 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
  35. 35. 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
  36. 36. 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
  37. 37. 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
  38. 38. 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)
  39. 39. 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
  40. 40. 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
  41. 41. 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
  42. 42. 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
  43. 43. 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
  44. 44. 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>
  45. 45. 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">
  46. 46. 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
  47. 47. 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
  48. 48. 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
  49. 49. 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.
  50. 50. 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
  51. 51. 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
  52. 52. 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
  53. 53. 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 -
  54. 54. 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:OracleMiddlewarejdeveloperupgradelogs*.* Upgrade BPEL Projects Migrate Project in JDeveloper 11g
  55. 55. 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.
  56. 56. 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
  57. 57. 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
  58. 58. 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:OracleMiddlewarejdeveloperupgradelogs*.*
  59. 59. 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
  60. 60. 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
  61. 61. 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 
  62. 62. 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
  63. 63. 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.
  64. 64. 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>
  65. 65. 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
  66. 66. 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
  67. 67. 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
  68. 68. 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
  69. 69. 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?
  70. 70. 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
  71. 71. 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!
  72. 72. Slide 72 of 79 © Raastech, Inc. 2011 | All rights reserved. Summary
  73. 73. 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
  74. 74. 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.
  75. 75. 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
  76. 76. 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
  77. 77. 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
  78. 78. 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
  79. 79. Slide 79 of 79 © Raastech, Inc. 2011 | All rights reserved. Contact Information Ahmed Aboulnaga Technical Director ahmed.aboulnaga@raastech.com

×