SlideShare a Scribd company logo
UPGRADING ORACLE SOA SUITE 10G TO 11G
A White Paper prepared by Raastech for IOUG and presented at Collaborate 11
Author
Ahmed Aboulnaga
Copyright
Raastech 2011
UPGRADING ORACLE SOA SUITE 10G TO 11G
Raastech White Paper ๏ฎ 2 / 33
INTRODUCTION
This white paper walks through an approach that assists in the complicated process of
upgrading from Oracle SOA Suite 10g (10.1.3.x) to Oracle SOA Suite 11g (11.1.1.3+).
Although the phrases are used interchangeably in this paper, the effort from moving from
Oracle SOA Suite 10g to 11g is both an upgrade and a migration. The upgrade is result of
moving to a new version of the same product, namely to Oracle SOA Suite 11g. The migration is
the process of converting existing SOA Suite 10g code to enable it to deploy and execute on
SOA Suite 11g.
Thus, the two main aspects related to the upgrade process are typically:
๏‚ง Infrastructure upgrade
๏‚ง Code migration
This paper focuses on the code migration process, and in specific the migration of BPEL and ESB
code to their 11g equivalents in the form of BPEL and Mediator composites. The process is
sometimes unclear, laborious, and introduces risk as a result of the underlying code being
altered.
The challenges of upgrading donโ€™t end there. Several core concepts have fundamentally
changed with the introduction of SOA Suite 11g, and there is not enough direction as to what to
do. Understandably, the Oracle documentation cannot cover every possible scenario. Also, not
every area is covered in this white paper, such as human workflow or business rules.
Applicable Versions
The majority of SOA Suite 10g installations run on Oracle Application Server while the majority
of SOA Suite 11g installations run on Oracle WebLogic Server, thus several instructions
documented in this paper are specific to those application servers.
This document can apply to most versions of Oracle SOA Suite 10g, including both 10.1.2.x and
10.1.3.x, but focuses mostly on upgrading to the following Oracle Fusion Middleware 11g
components:
๏‚ง Oracle WebLogic Server 11g (10.3.3+)
๏‚ง Oracle SOA Suite 11g (11.1.1.3+)
UPGRADING ORACLE SOA SUITE 10G TO 11G
Raastech White Paper ๏ฎ 3 / 33
Audience
This paper is intended for individuals who have prior development and/or administration
experience with Oracle SOA Suite 10g, with a basic understanding of SOA Suite 11g, and thus is
geared towards:
๏‚ง Oracle SOA Architects
๏‚ง Oracle SOA Developers
๏‚ง Oracle SOA Suite Administrators
Overview of the Raastech Upgrade Process
Raastech has developed an 8-step approach to upgrading from Oracle SOA Suite 10g to 11g.
This white paper and its proposed underlying approach are not meant to replace the existing
Oracle upgrade process or its documentation, but rather to augment it.
The upgrade approach is divided into the following 8 sequential steps:
1. Understand the Upgrade Process
2. Infrastructure Installation
3. Application Server Setup
4. Develop the Deployment Process
5. Import Artifacts to the MDS
6. Upgrade the Projects
7. Post-Upgrade Steps
8. Test
These steps will be described in varying detail throughout this white paper. But as shown here,
we recommend performing certain infrastructure and configuration tasks (steps 2-5) before
beginning the actual migration of the code itself (steps 6-7).
UPGRADING ORACLE SOA SUITE 10G TO 11G
Raastech White Paper ๏ฎ 4 / 33
1. UNDERSTAND THE UPGRADE PROCESS
Prior to engaging in the upgrade project, it is important to gain an overall understanding of the
upgrade process from existing Oracle documentation. Oracle has provided excellent
documentation (referenced below) to assist you in the planning phase and points you to the
appropriate technical documentation.
The Oracle Upgrade Approach
Oracle provides several documents that detail the entire upgrade effort, beginning at a high-
level (as shown in Figure 1) and subsequently delving into details.
Review the following Oracle documentation prior to beginning the upgrade project:
๏‚ง 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 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.htm
Goal of Step 1
Obtain an overall understanding of the upgrade process by
reviewing current Oracle documentation.
Review the various Oracle documents referenced in this section to gain a
better understanding of the overall upgrade process.
UPGRADING ORACLE SOA SUITE 10G TO 11G
Raastech White Paper ๏ฎ 5 / 33
Figure 1 below provides a flow diagram of the main steps involved in the upgrade process. This
approach is correct and the Oracle documentation does a good job of pointing you to other
resources, but there are specific details missing that are addressed later in this white paper.
http://download.oracle.com/docs/cd/E17904_01/upgrade.1111/e10127/summary.htm#BABCFIEA
Figure 1. The Oracle Upgrade Process
UPGRADING ORACLE SOA SUITE 10G TO 11G
Raastech White Paper ๏ฎ 6 / 33
2. INFRASTRUCTURE INSTALLATION
Though we do not walk through details regarding the infrastructure architecture, high
availability setup, or cutover approach, this step in the process is meant to emphasize the fact
that both the SOA Suite 10g and the newly installed SOA Suite 11g environments used for
development should be running in parallel duration of the code upgrade effort. The same
applies to Test, QA, and ultimately Prod environments, until the actual cutover is completed.
Install Oracle SOA Suite 11g
Installing Oracle SOA Suite 11g (11.1.1.4) in a single-node architecture is rather straightforward
and typically takes between 1 to 2 hours. The product stack is installed in the following order:
๏‚ง Install Oracle Database 11g (11.2.0.x)
๏‚ง Install Oracle WebLogic Server 11g (10.3.4)
๏‚ง Create SOA database schemas using the Repository Creation Utility (RCU) 11g
๏‚ง Install Oracle SOA Suite 11g (11.1.1.4)
๏‚ง Create SOA domain
Refer to the Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite 11g
Release 1 (11.1.1) for details regarding high availability:
http://download.oracle.com/docs/cd/E12839_01/core.1111/e12036/toc.htm
Goal of Step 2
Ensure that both the Oracle SOA Suite 10g and 11g environments
are accessible during the upgrade effort.
Since Oracle SOA Suite 11g is a new installation (not an in-place upgrade of
the existing SOA Suite 10g), it is possible to maintain both environments
temporarily, until the entire upgrade project is completed.
UPGRADING ORACLE SOA SUITE 10G TO 11G
Raastech White Paper ๏ฎ 7 / 33
Maintain Existing Oracle SOA Suite 10g Environment
Upgrading the Oracle SOA Suite 10g infrastructure to 11g involves installing a completely new
stack, as it is not an in-place upgrade (i.e., the existing 10g infrastructure is untouched). Thus,
once developers upgrade their SOA 10g code, it will be deployed on to a completely new
environment. This simplifies the development, testing, and cutover process.
Keep the following in mind when setting up your development environment:
๏‚ง Data sources and connection factories for both the 10g and 11g infrastructures can
point to same targets.
๏‚ง Turn off all services on the 10g infrastructure that does polling (e.g., JMS Adapter
consume, AQ Adapter dequeue, DB Adapter polling). If not, polling services will compete
on both the old and new infrastructures.
Validation also becomes easier for developers. Simply submit the same payload to both the old
and new environments, and confirm that results are identical on both environments.
UPGRADING ORACLE SOA SUITE 10G TO 11G
Raastech White Paper ๏ฎ 8 / 33
3. APPLICATION SERVER SETUP
Certain setup must be performed on the 11g application server prior to upgrading your code.
All out-of-the-box configurations need not be touched, and only custom configuration will need
to be set identically in the new environment. This mostly includes data sources and connection
factories.
Partitions are a concept introduced with Oracle SOA Suite 11g (11.1.1.3), which helps better
organize where to deploy your composites, and is addressed in the section. Any custom
properties will also have to be migrated.
Migrate Custom Data Sources and Connection Factories
Data sources and Connection Factories are used by SOA code to connect to a resource or target
system (e.g., AQ, JMS, database, etc.) without having the need to hardcode passwords within
your code.
For example, your SOA projects may be leveraging custom created JNDIs that take the following
format:
jdbc/db/PerfTest
eis/db/PerfTest
Goal of Step 3
Migrate all custom configuration from Oracle Application Server 10g
to Oracle WebLogic Server 11g.
All custom application server and SOA server configuration that is required
for use by your SOA code should be migrated (manually) from Oracle
Application Server 11g to Oracle WebLogic Server 11g.
UPGRADING ORACLE SOA SUITE 10G TO 11G
Raastech White Paper ๏ฎ 9 / 33
1. Custom data sources are configured in Oracle Application Server 10g via the EM console
by navigating the following screens:
Cluster Topology ๏ƒ  oc4j_soa ๏ƒ  Administration ๏ƒ  JDBC Resources
Figure 2. Page displaying the list of data sources in Oracle Application Server 10g
2. In Oracle WebLogic Server 11g, navigate to the following page to create all custom data
sources using the same names and settings:
soa_domain ๏ƒ  Services ๏ƒ  Data Sources
Figure 3. Page displaying the list of data sources in Oracle WebLogic Server 11g
UPGRADING ORACLE SOA SUITE 10G TO 11G
Raastech White Paper ๏ฎ 10 / 33
3. Navigate to the following screens to get a list of all Connection Factory in Oracle
Application Server 10g via the EM console:
Cluster Topology ๏ƒ  oc4j_soa ๏ƒ  Applications ๏ƒ  default ๏ƒ  (adapter) ๏ƒ  Connection Factories
4. Navigate to the following screens to create the equivalent Connection Factory in Oracle
WebLogic Server 11g:
soa_domain ๏ƒ  Deployments ๏ƒ  (Adapter) ๏ƒ  Configuration ๏ƒ  Outbound Connection Pools
Create Partitions (as a substitute for BPEL Domains)
BPEL domains in 10g are used to group BPEL processes. Each BPEL domain has its own
configuration and logging, and is created by logging in to the BPEL Admin console at a url similar
to the following:
http://soasandbox.raastech.com:7777/BPELAdmin
There is no concept of BPEL domains in Oracle SOA Suite 11g (technically, there is a single BPEL
domain). Beginning with Oracle SOA Suite 11.1.1.3, the concept of a โ€œpartitionโ€ is introduced.
Partitions, unlike BPEL domains, do not have their own configuration or logging. However, from
a code grouping aspect, they can be treated identically to BPEL domains.
For example, if you have a BPEL domain called โ€œAccountingโ€, simply create a partition called
โ€œAccountingโ€.
Figure 4. Creating and deleting โ€œpartitionsโ€ in SOA Suite 11g can be done by right-clicking on โ€˜soa-infraโ€™
UPGRADING ORACLE SOA SUITE 10G TO 11G
Raastech White Paper ๏ฎ 11 / 33
1. Create a โ€œpartitionโ€ in 11g with the same name for each BPEL domain in 10g.
Create Partitions (as a substitute for ESB Services and Service Groups)
Systems and Service Groups are used in ESB 10g to group ESB services.
There is no concept of ESB Systems and Service Groups in Oracle SOA Suite 11g. Beginning with
Oracle SOA Suite 11.1.1.3, the concept of a โ€œpartitionโ€ is introduced. Partitions, unlike ESB
Systems and Service Groups, do not have listeners. However, from a code grouping aspect, they
can be treated similarly to ESB Systems and Service Groups.
However, Services Groups in ESB 10g can be cascading (i.e., a Service Group can have another
Service Group). Thus cascading hierarchies will need to be flattened. For example, if you have a
System called โ€œHRโ€ with two Service Groups โ€œEuropeโ€ and โ€œUnited Statesโ€, it will have to be
flattened as shown. Also note that partition names cannot have spaces.
Figure 5. ESB 10g System and Service Group (left) and Oracle Fusion Middleware 11g Partitions (right)
1. Create a โ€œpartitionโ€ in 11g with the same name for each ESB System and Service Group
in 10g.
a. Ensure that the hierarchy is flattened.
b. Do not use spaces in partitions names.
Migrate BPEL Domain Properties
UPGRADING ORACLE SOA SUITE 10G TO 11G
Raastech White Paper ๏ฎ 12 / 33
There is technically a single domain in Oracle SOA Suite 11g (versus potentially multiple
domains in SOA Suite 10g), so properties will affect the entire server (affecting both BPEL and
Mediator components).
1. Begin by getting a copy of all BPEL Process Manager 10g properties for all domains. This
is located on the Oracle_Home of the BPEL Process Manager 10g:
$ORACLE_HOME/bpel/domains/<domain>/config/domain.xml
If you have multiple BPEL domains and different settings for the properties on each of
those domains, you will have to decide which setting you want to use in 11g.
2. The properties should then be manually added to one of these 11g configuration files:
$DOMAIN_HOME/config/soa-infra/configuration/bpel-config.xml
$DOMAIN_HOME/config/<domain_name>/configuration/soa-infra-config.xml
The table below shows properties that have changed between 10g and 11g. All other properties
behave the same.
10g Property 11g Property
dspInvokeAllocFactor No longer exists
dspMaxThreads No longer exists
processCheckSecs No longer exists
txDatasourceJndi No longer exists
uddiLocation oracle.soa.uddi.registry.inquiryUrl
uddiPassword oracle.soa.uddi.registry.password
uddiUsername oracle.soa.uddi.registry.username
Table 1. BPEL properties that have changed from 10g to 11g
For more information, check out chapter 10.2.6 Specifying Domain Descriptor Properties in
Oracle BPEL Process Manager 11g at the following link:
http://download.oracle.com/docs/cd/E17904_01/upgrade.1111/e10127/upgrade_bpel
_apps.htm#CHDFDEDB
Other Custom Configuration
UPGRADING ORACLE SOA SUITE 10G TO 11G
Raastech White Paper ๏ฎ 13 / 33
There may be other configuration that would need to be made on the new 11g environment,
and this may include custom configuration from the Oracle HTTP Server, Oracle Database,
operating system, etc. Ensure that any other custom configuration is applied to the new
environment.
UPGRADING ORACLE SOA SUITE 10G TO 11G
Raastech White Paper ๏ฎ 14 / 33
4. DEVELOP THE DEPLOYMENT PROCESS
Make sure that all Ant scripts are ready at this stage. This is not only needed when importing
artifacts to the MDS (in Step 5), but will simplify and speed up your future deployments.
Oracle SOA Suite 11g ships all Ant scripts needed, and theyโ€™re quite good. The most important
targets needed for the upgrade project are highlighted in the table below.
Description Ant Script Ant Target
Compile composite ant-sca-package.xml package
Deploy composite ant-sca-deploy.xml deploy
Export MDS ant-sca-deploy.xml exportSharedData
Import artifacts to MDS ant-sca-deploy.xml deploy
Table 2. Key Ant targets needed for the upgrade
Compile (Package) Composites
This command demonstrates how to set the environment, change to the appropriate directory,
and execute Ant to compile a โ€œHelloWorldโ€ composite project. This creates a deployable JAR
file under the projectโ€™s ~/deploy subdirectory. This JAR file can be deployed via the Fusion
Middleware console or through Ant.
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
Goal of Step 4
Prepare all Ant scripts, as it is required for Step 5.
SOA Suite 11g provides great Ant script to ease the deployment process.
This is required primarily for Step 5, but will also tremendously simplify your
future deployments.
UPGRADING ORACLE SOA SUITE 10G TO 11G
Raastech White Paper ๏ฎ 15 / 33
ant -f ant-sca-package.xml package
-DcompositeDir=/u01/HelloWorld
-DcompositeName=HelloWorld
-Drevision=1.0
Deploy Composites
This command demonstrates how to execute Ant to deploy a โ€œHelloโ€ composite to the SOA
server. The full path to the deployable JAR file must be specified.
ant -f ant-sca-deploy.xml deploy
-DserverURL=http://soadev:8001/soa-infra/deployer
-Duser=weblogic
-Dpassword=welcome1
-DsarLocation=/u01/HelloWorld/deploy/sca_HelloWorld_rev1.0.jar
-Dpartition=default
-Doverwrite=true
-DforceDefault=true
-Dconfigplan=/tmp/cfgplan.xml
Export MDS
This command demonstrates how to execute Ant to export the entire MDS to a JAR file. The JAR
file can be unzipped and browsed through the file system. By manipulating the โ€œpatternโ€
parameter, it is possible to limit what you want to export.
ant -f ant-sca-deploy.xml exportSharedData
-DserverURL=http://soadev:8001/soa-infra/deployer
-Duser=weblogic
-Dpassword=welcome1
-DjarFile=/tmp/RaastechMetaData.jar
-Dpattern=**
Import Artifacts to MDS
This command demonstrates how to zip a directory structure, and use Ant to import the
contents to the MDS, maintaining the same folder structure.
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
UPGRADING ORACLE SOA SUITE 10G TO 11G
Raastech White Paper ๏ฎ 16 / 33
-DserverURL=http://soadev:8001/soa-infra/deployer
-Duser=weblogic
-Dpassword=welcome1
-Doverwrite=true
-DsarLocation=/tmp/RaastechMetaData.jar
For more information regarding the Ant build scripts shipped with Oracle SOA Suite 11g, refer
to chapter 43.6.2 How to Manage SOA Composite Applications with ant Scripts:
http://download.oracle.com/docs/cd/E12839_01/integration.1111/e10224/sca_lifecycl
e.htm#sthref2497
UPGRADING ORACLE SOA SUITE 10G TO 11G
Raastech White Paper ๏ฎ 17 / 33
5. IMPORTS ARTIFACTS TO THE MDS
In Oracle SOA Suite 10g, the majority of configuration were stored on the file system. This
meant that any change to any configuration file must be made on all midtiers. Now, in Oracle
SOA Suite 11g, these artifacts are stored centrally in the MDS.
The MDS, or Meta Data Services, is a database-based repository and all artifacts are now
centralized across all midtier servers. The content in the MDS is represented and navigated
identically to a file system layout. Artifacts may include DVMs, schemas, WSDLs, and fault
policies.
Browsing the MDS
The MDS can be browsed through any of the following ways:
๏‚ง Through a SOA-MDS connection in JDeveloper 11g
๏‚ง After exporting its contents through the Fusion Middleware console
๏‚ง After exporting its contents as a JAR file using Ant
Goal of Step 5
Import all shared artifacts such as custom DVMs, schemas, WSDLs,
and fault policies to the MDS prior to upgrading the SOA code.
Oracle SOA Suite 11g has introduced the concept of a database-based
repository, referred to as the MDS (Meta Data Services). All custom
artifacts should be imported to the MDS prior to the code upgrade, as the
code will need to be updated to reference them.
UPGRADING ORACLE SOA SUITE 10G TO 11G
Raastech White Paper ๏ฎ 18 / 33
Figure 6. MDS content can be browsed through JDeveloper 11g (left) or on the file system after exporting it (right)
Prior to upgrading your code, ensure that all artifacts are imported to the MDS. Examples of
these artifacts include DVMs, fault policies, schemas, WSDLs, etc.
After importing these artifacts, the code will be updated to reference these now MDS-based
artifacts (described later).
Migrating Shared Domain Value Maps (DVMs)
Although there are numerous ways to migrate DVMs from Oracle SOA Suite 10g to 11g, the
approach here is one of the quicker and simpler ways.
1. In Windows XP:
a. Double-click on โ€œMy Network Placesโ€
b. Double-click on โ€œAdd Network Placeโ€
c. Navigate through the screens, and provide the URL to your ESB slide as shown in
Figure 7.
UPGRADING ORACLE SOA SUITE 10G TO 11G
Raastech White Paper ๏ฎ 19 / 33
Figure 7. Creating a Windows Network Place to access DVMs in the ESB slide
2. The contents of the ESB slide are now accessible via Windows Explorer, as shown in
Figure 8.
Figure 8. Accessing the ESB slide from Windows Explorer
3. Download the DVMs and copy them to your local file system.
UPGRADING ORACLE SOA SUITE 10G TO 11G
Raastech White Paper ๏ฎ 20 / 33
4. Copy the DVMs to a unix-based operating system.
5. Run the following command to rename all file extension from .xml to .dvm:
rename .xml .dvm *.xml
6. Perform a global search-and-replace to change the <dvm> attribute (this is a linux based
command):
find . -type f -exec sed -i
"s%isNew="true"%xmlns="http://xmlns.oracle.com/dvm"
%" {} ;
This replaces an attribute in the DVM to convert it to the 11g compatible version. For
example:
10g: <dvm name="Country_Code" isNew="true">
11g: <dvm name="Country_Code" xmlns="http://xmlns.oracle.com/dvm">
7. Create a folder on the local file system, and copy the DVMs to this location:
c:appsCustomMetaDatadvm
8. Zip up the contents of this folder (from the top level c:apps) and use Ant to import it
to the MDS.
This would be imported to the MDS under the following location:
oramds:/apps/CustomMetaData/dvm
Migrate BPEL Fault Policies
It is possible to maintain multiple fault policies in Oracle SOA Suite 11g. This section describes,
at a high-level, how to migrate a single, custom fault policy from 10g to 11g.
1. Identify all BPEL Process Manager 10g domains that have fault policies. For example, the
default domain will have its own fault policy that may have been customized. The two
relevant files are located here:
$ORACLE_HOME/bpel/domains/default/config/fault-bindings.xml
$ORACLE_HOME/bpel/domains/default/config/fault-policies/DefaultPolicy.xml
UPGRADING ORACLE SOA SUITE 10G TO 11G
Raastech White Paper ๏ฎ 21 / 33
2. Change the version in fault-bindings.xml from โ€œ2.0.1โ€ to โ€œ3.0โ€ and change the
<process> element to <composite>, as highlighted in red below:
<?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>
3. Rename the 10g fault policy file to fault-policies.xml, change the version from
โ€œ2.0.1โ€ to โ€œ3.0โ€, and add a higher level <faultPolicies> node. For example, the
text in red is new:
<?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">
.
.
.
</faultPolicy>
</faultPolicies>
4. Create a folder on the local file system, and copy both files to this location:
c:appsCustomMetaDatafaultPolicies
5. Zip up the contents of this folder (from the top level c:apps) and use Ant to import it
to the MDS.
This would be imported to the MDS under the following location:
oramds:/apps/CustomMetaData/faultPolicies
UPGRADING ORACLE SOA SUITE 10G TO 11G
Raastech White Paper ๏ฎ 22 / 33
Import Shared Schemas and WSDLs
If you have shared schemas and/or WSDLs, import them to the MDS, maintaining the same
directory structure. If you have imports that are fully qualified references, they must be
changed to local references accordingly.
Let's say you have 2 schemas on your shared server in the following location:
http://server:7777/Account/Account.xsd
http://server:7777/Custom/CustomAccount.xsd
And letโ€™s say that Account.xsd imports the CustomAccount.xsd schema as an HTTP
reference as follows:
<schema import="http://server:7777/Custom/CustomAccount.xsd">
This reference in Account.xsd will need to be changed to a local reference, as:
<schema import="../Custom/CustomAccount.xsd">
Now both these schemas should be copied to your local file system, in preparation for import
to the MDS:
c:antCustomMetaDataxsdAccountAccount.xsd
c:antCustomMetaDataxsdCustomCustomAccount.xsd
Finally, zip up the contents of this folder and use Ant to import it to the MDS. This would be
imported to the MDS under the following location:
oramds:/apps/CustomMetaData/xsd/Account/Account.xsd
oramds:/apps/CustomMetaData/xsd/Custom/CustomAccount.xsd
UPGRADING ORACLE SOA SUITE 10G TO 11G
Raastech White Paper ๏ฎ 23 / 33
6. UPGRADE THE PROJECTS
To upgrade BPEL and ESB projects developed originally in JDeveloper 10g to 11g involves going
through pre-upgrade steps, migration of the project, and post-upgrade steps. This will migrate
the project to an 11g composite that will consist of a single BPEL or Mediator component.
inconsistent
Upgrade BPEL Projects
1. Ensure that projects are migrated in order of dependency.
For example, if HelloWorld1 invokes HelloWorld2, then HelloWorld2 must be upgraded
and deployed to the Oracle SOA Suite 11g server prior to upgrading HelloWorld1.
2. Open the BPEL project in JDeveloper 10g.
3. Modify partner link endpoints to point to the 11g service.
For example, HelloWorld1 is currently pointing to HelloWorld2 deployed to the old SOA
Suite 10g server, referencing it as follows:
http://soa10g:7777/orabpel/default/HelloWorld2/HelloWorld2?wsdl
Now that HelloWorld2 is upgraded and deployed to the new SOA Suite 11g server,
modify the partner link in HelloWorld1 to point to the newly upgraded HelloWorld2:
http://soa11g:8001/soa_infra/services/default/HelloWorld2/He
lloWorld2_ep.wsdl
* Always use abstract WSDLs when referencing composites.
4. Save the project in JDeveloper 10g.
Goal of Step 6
Upgrade your SOA projects from the 10g version to the 11g version.
Oracle JDeveloper 11g provides a (somewhat unreliable) Migration Wizard
that will automatically upgrade your SOA code from 10g to 11g. Prior to
doing this, some pre-upgrade steps are required and performed on
JDeveloper 10g first.
UPGRADING ORACLE SOA SUITE 10G TO 11G
Raastech White Paper ๏ฎ 24 / 33
5. Open the project in JDeveloper 11g.
6. Navigate through the Migration Wizard.
If an error occurs, the Migration Wizard does not give a specific reason for the failure of
the migration.
In that case, check the logs at (or appropriate directory):
c:OracleMiddlewarejdeveloperupgradelogs*.*
Upgrade ESB Projects
1. Ensure that projects are migrated in order of dependency.
For example, if HelloWorld1 invokes HelloWorld2, then HelloWorld2 must be upgraded
and deployed to the SOA Suite 11g server prior to upgrading HelloWorld1.
2. Open the ESB project in JDeveloper 10g.
3. Modify partner link endpoints to point to the 11g service.
For example, HelloWorld1 is currently pointing to HelloWorld2 deployed to the old SOA
Suite 10g server, referencing it as follows:
http://soa10g:7777/esb/wsil/DefaultSystem/HelloWorld2?wsdl
Now that HelloWorld2 is upgraded and deployed to the new SOA Suite 11g server,
modify the partner link in HelloWorld1 to point to the newly upgraded HelloWorld2:
http://soa11g:8001/soa_infra/services/default/HelloWorld2/He
lloWorld2_ep.wsdl
* Always use abstract WSDLs when referencing composites.
UPGRADING ORACLE SOA SUITE 10G TO 11G
Raastech White Paper ๏ฎ 25 / 33
4. If the routing rule does not have a SOAP service as the target, then manually add one
(instead of referencing the ESB endpoint from the server).
5. Ensure that the โ€œInvocable from an external web serviceโ€ is selected for all ESB routing
services.
6. Save the project in JDeveloper 10g.
7. Open all .esbsvc files in a text editor.
a. Delete all โ€œparentโ€ lines that have lines similar to the following:
<parent guid="96DD76C0971311DABF1A87858E4395A7"
qname="DefaultSystem" type="system"/>
b. Change all remaining โ€œqnameโ€ references and remove the system and service
groups as follows:
OLD: qname="DefaultSystem.Accounting.HelloWorld"
NEW: qname="HelloWorld"
8. Open the project in JDeveloper 11g.
9. Navigate through the Migration Wizard.
If an error occurs, the Migration Wizard does not give a specific reason for the failure of
the migration.
UPGRADING ORACLE SOA SUITE 10G TO 11G
Raastech White Paper ๏ฎ 26 / 33
In that case, check the logs at (or appropriate directory):
c:OracleMiddlewarejdeveloperupgradelogs*.*
UPGRADING ORACLE SOA SUITE 10G TO 11G
Raastech White Paper ๏ฎ 27 / 33
7. POST-UPGRADE STEPS
After the code has been successfully upgraded to 11g, based on the complexity of the project
and features used, several post-upgrade steps may need to be performed. Be cognizant of the
fact that it is impossible to exhaustively cover every post-upgrade steps required for your code.
This step also focuses on areas not directly addressed in Oracle documentation, but the Oracle
Fusion Middleware Upgrade Guide for Oracle SOA Suite, WebCenter, and ADF 11g Release 1
(11.1.1) must also be followed to address other documented post-upgrade steps.
Modify DVM Lookups
Every DVM lookup must be manually modified.
1. Open all files in the project (e.g., .xsl) and locate any DVM lookup functions.
2. Manually modify the DVM function name and the location of the DVM as described.
For example, the 10g function may look as follows:
orcl:lookup-dvm ("Currency", "Country", "US", "Currency", "USD")
Both the DVM lookup function and the path to the DVM should be changed:
dvm:lookupValue
("oramds:/apps/CustomMetaData/dvm/Currency.dvm", "Country",
"US", "Currency", "USD")
Modify Schema Imports
Every schema import should be manually modified to use ORAMDS references instead of HTTP
references. By doing this, not only does it improve performance, but there is no more
hardcoding of hostnames and ports.
Goal of Step 7
Perform all post-upgrade steps to your BPEL and Mediator code.
Perhaps the most time-consuming step of the entire process, perform all
post-upgrade steps, most of which have to be done manually.
UPGRADING ORACLE SOA SUITE 10G TO 11G
Raastech White Paper ๏ฎ 28 / 33
Schemas local to the project do not have to be updated.
1. Open all schemas and WSDLs in the project and locate any import or location
statements (except for local schemas, which remain unchanged).
2. Convert the HTTP reference to an ORAMDS reference.
For example, the 10g import may look as follows:
<schema import="http://soa10g:7777/CustomMetaData/xsd/Account.xsd">
The import would be changed as follows:
<schema import="oramds:/apps/CustomMetaData/xsd/Account.xsd">
Add Fault Policies and Bindings
Unlike 10g, there is no concept of a global fault policy in Oracle SOA Suite 11g that will
automatically apply to all deployed composites. Therefore, you must manually reference the
fault policy and fault binding in composite.xml.
1. Edit composite.xml
2. Add the following immediately below the </service> tag to reference your custom
fault policy:
<property name="oracle.composite.faultPolicyFile">
oramds:/apps/CustomMetaData/faultPolicies/fault-policy.xml
</property>
<property name="oracle.composite.faultBindingFile">
oramds:/apps/CustomMetaData/faultPolicies/fault-bindings.xml
</property>
If you have more than one fault policy, you will have to decide which one you want your
composite to reference.
Migrate bpel.xml Properties
Any custom properties in bpel.xml (10g) will have to be manually added to
composite.xml (11g).
1. Open the 10g bpel.xml file, and locate any custom properties. For example:
UPGRADING ORACLE SOA SUITE 10G TO 11G
Raastech White Paper ๏ฎ 29 / 33
<property name="retryInterval">60</property>
2. Open the 11g composite.xml file, and add the 11g version of the property:
<property name="jca.retry.interval">60</property>
The table below lists some 10g and 11g properties:
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>
Table 3. BPEL properties in 10g and their equivalent 11g version
Modify BPEL Sensors Connection Factory References
If using BPEL sensors, the connection factory has changed in Oracle SOA Suite 11g.
1. In JDeveloper 11g, choose the โ€œMonitorโ€ button to edit sensor detail:
2. Click on BPEL Sensor Action:
3. Modify the JMS Connection Factory and set it to โ€œweblogic.jms.ConnectionFactoryโ€:
Publish Type: JMS Queue
JMS Connection Factory: weblogic.jms.ConnectionFactory
UPGRADING ORACLE SOA SUITE 10G TO 11G
Raastech White Paper ๏ฎ 30 / 33
Publish Target: jms/MyQueue
Review Mediator Filters
The JDeveloper 11g Migration Wizard does not work properly in some cases. For example,
when ESB filters are migrated, brackets are missing which changes the meaning of the filter if a
combination of logical operators are used (e.g., AND, OR). In other cases, dollar ($) signs are
missing which results in incorrect XPaths.
1. Open the ESB project in JDeveloper 10g.
2. Review the filter.
3. Open the migrated Mediator project in JDeveloper 11g.
4. Review the filter.
5. Compare both filters and ensure that it is migrated properly.
Review and Modify Header Functions
Some ESB XPath header functions are made obsolete in 11g and replaced with alternate
Mediator XPath functions. See Table 4 below.
ESB XPath Function (obsolete) Mediator XPath Function
ehdr:setOutboundHeader mhdr:setProperty
ehdr:getRequestHeader mhdr:getProperty
Table 4. Obsoleted ESB XPath functions and their equivalent 11g versions
These functions impact areas such as header manipulation and dynamic routing.
For example, dynamic routing requires setting the outbound header via the
ehdr:setOutboundHeader function as follows:
select="ehdr:setOutboundHeader('/shdr:ESBHeader/shdr:location',
$LocationIn, 'shdr=http://xmlns.oracle.com/esb;')"
In 11g, the equivalent would be:
select="mhdr:setProperty('out.property.endpointURI',$LocationIn)"
UPGRADING ORACLE SOA SUITE 10G TO 11G
Raastech White Paper ๏ฎ 31 / 33
Header functions are one of the more problematic areas of the migration. In some cases, such
as setting usernames and passwords in the header, these will flat out not work and those
functions must be moved to the new โ€œAssign Valuesโ€ feature in Mediator 11g.
1. Checked and modify each header functions manually.
2. Review both Oracle and online documentation to research how to migrate header
functions.
3. Test each case individually to ensure that the new header function operates identically
to the 10g version of the code.
Review Usage of getDomainId()
Some BPEL XPath functions change in behavior as well, and can only be discovered during
runtime (i.e., testing).
The BPEL XPath function getDomainId() behaves differently, since there is no longer the
concept of BPEL domains. The function now returns NULL.
1. Find all code that is using the getDomainId() function.
2. Consider using an alternate function or modifying your code.
Other Stuff
The Oracle Fusion Middleware Upgrade Guide for Oracle SOA Suite, WebCenter, and ADF 11g
Release 1 (11.1.1) has an enormous number of additional steps that may apply to your code.
๏‚ง Review the Oracle Fusion Middleware Upgrade Guide for Oracle SOA Suite, WebCenter,
and ADF 11g Release 1 (11.1.1) at this location and follow all recommended upgrade
steps not covered in this white paper:
http://download.oracle.com/docs/cd/E17904_01/upgrade.1111/e10127/toc.htm
UPGRADING ORACLE SOA SUITE 10G TO 11G
Raastech White Paper ๏ฎ 32 / 33
8. TEST
Compilation errors will reveal a lot. Deployment errors will also reveal a lot.
Validation of the newly upgrade code is actually quite easy. As discussed earlier, both SOA Suite
10g and 11g infrastructures should remain available during the upgrade period. Use client tools
to test such as SoapUI or the consoles (e.g., BPEL Console 10g, Oracle Fusion Middleware 11g
Console).
Testing is straightforward:
๏‚ง Test payload on your service deployed to SOA Suite 10g
๏‚ง Test payload on your service deployed to SOA Suite 11g
๏‚ง Compare results; they should be identical
Goal of Step 8
Compile, deploy, and test every project.
Since the underlying code has largely changed, dedicate time to exhaustive
unit and end-to-end testing. Fortunately, identifying and resolving issues
uncovered through the compilation and deployment of the JDeveloper 11g
SOA projects addresses many of the coding issues, but it is not enough, as
there many coding issues that will only be discovered at runtime.
UPGRADING ORACLE SOA SUITE 10G TO 11G
Raastech White Paper ๏ฎ 33 / 33
FINAL THOUGHTS
The 8-step upgrade approache developed by Raastech is an excellent starting point and has
aided in ensuring the success of SOA Suite 10g to 11g upgrade projects. Nonetheless, neither
our proposed approach nor this white paper are meant to replace the Oracle documentation,
which should also be relied on. Rather, this white paper should be used to augment Oracleโ€™s
existing documentation.
Expect to touch nearly 100% of your code and expect to encounter issues no one else has.
The reason we recommend our approach is because it provides certain areas which we believe
should be completed before actually upgrading your code, and in specific, these are:
๏‚ง Develop the deployment process early on.
This is needed for the next step. โ€˜Nuff said.
๏‚ง Import all artifacts to the MDS.
If you donโ€™t import your DVMs, fault policies, and shared schemas to the MDS, it will
become a back-and-forth game between the developers (who will constantly complain
of missing artifacts in the MDS) and the application administrators.
About Raastech:
Raastech is a fast growing company with diversified disciplines but specializing in information technology development and systems integration.
We employ some of the top industry experts to help us achieve our mission. Founded in 2009, Raastech provides management consulting,
systems development and integration, and managed services 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:
Upgrading Oracle SOA Suite 10g to 11g
April 2011
Raastech Headquarters:
2201 Cooperative Way, Suite 600
Herndon, VA 20171
www.raastech.com
Copyright ยฉ 2011
Raastech, Inc.
All rights reserved.
Ad

More Related Content

What's hot (20)

Changes in WebLogic 12.1.3 Every Administrator Must Know
Changes in WebLogic 12.1.3 Every Administrator Must KnowChanges in WebLogic 12.1.3 Every Administrator Must Know
Changes in WebLogic 12.1.3 Every Administrator Must Know
Bruno Borges
ย 
Azure DevOps for JavaScript Developers
Azure DevOps for JavaScript DevelopersAzure DevOps for JavaScript Developers
Azure DevOps for JavaScript Developers
Sarah Dutkiewicz
ย 
Software Defined Networking: The OpenDaylight Project
Software Defined Networking: The OpenDaylight ProjectSoftware Defined Networking: The OpenDaylight Project
Software Defined Networking: The OpenDaylight Project
Great Wide Open
ย 
JDBC Next: A New Asynchronous API for Connecting to a Database
JDBC Next: A New Asynchronous API for Connecting to a Database JDBC Next: A New Asynchronous API for Connecting to a Database
JDBC Next: A New Asynchronous API for Connecting to a Database
Yolande Poirier
ย 
Database Migrations with Gradle and Liquibase
Database Migrations with Gradle and LiquibaseDatabase Migrations with Gradle and Liquibase
Database Migrations with Gradle and Liquibase
Dan Stine
ย 
Java EE 7 for WebLogic 12c Developers
Java EE 7 for WebLogic 12c DevelopersJava EE 7 for WebLogic 12c Developers
Java EE 7 for WebLogic 12c Developers
Bruno Borges
ย 
Servlet programming
Servlet programmingServlet programming
Servlet programming
Mallikarjuna G D
ย 
How and why to upgrade to java 16 or 17
How and why to upgrade to java 16 or 17How and why to upgrade to java 16 or 17
How and why to upgrade to java 16 or 17
Johan Janssen
ย 
Servlet programming
Servlet programmingServlet programming
Servlet programming
Mallikarjuna G D
ย 
Reactive Applications with Apache Pulsar and Spring Boot
Reactive Applications with Apache Pulsar and Spring BootReactive Applications with Apache Pulsar and Spring Boot
Reactive Applications with Apache Pulsar and Spring Boot
VMware Tanzu
ย 
The Eclipse Transformer Project
The Eclipse Transformer Project The Eclipse Transformer Project
The Eclipse Transformer Project
Jakarta_EE
ย 
Contributors Guide to the Jakarta EE 10 Galaxy
Contributors Guide to the Jakarta EE 10 GalaxyContributors Guide to the Jakarta EE 10 Galaxy
Contributors Guide to the Jakarta EE 10 Galaxy
Jakarta_EE
ย 
Haj 4308-open jpa, eclipselink, and the migration toolkit
Haj 4308-open jpa, eclipselink, and the migration toolkitHaj 4308-open jpa, eclipselink, and the migration toolkit
Haj 4308-open jpa, eclipselink, and the migration toolkit
Kevin Sutter
ย 
SOA Suite 12c Customer implementation
SOA Suite 12c Customer implementationSOA Suite 12c Customer implementation
SOA Suite 12c Customer implementation
Michel Schildmeijer
ย 
Exachk and oem12c - IOUG C15LV
Exachk and oem12c - IOUG C15LVExachk and oem12c - IOUG C15LV
Exachk and oem12c - IOUG C15LV
Bobby Curtis
ย 
Oracle GoldenGate on Docker
Oracle GoldenGate on DockerOracle GoldenGate on Docker
Oracle GoldenGate on Docker
Bobby Curtis
ย 
Apache DeltaSpike the CDI toolbox
Apache DeltaSpike the CDI toolboxApache DeltaSpike the CDI toolbox
Apache DeltaSpike the CDI toolbox
Antoine Sabot-Durand
ย 
Select Star: Unified Batch & Streaming with Flink SQL & Pulsar
Select Star: Unified Batch & Streaming with Flink SQL & PulsarSelect Star: Unified Batch & Streaming with Flink SQL & Pulsar
Select Star: Unified Batch & Streaming with Flink SQL & Pulsar
Caito Scherr
ย 
The Making of the Oracle R2DBC Driver and How to Take Your Code from Synchron...
The Making of the Oracle R2DBC Driver and How to Take Your Code from Synchron...The Making of the Oracle R2DBC Driver and How to Take Your Code from Synchron...
The Making of the Oracle R2DBC Driver and How to Take Your Code from Synchron...
VMware Tanzu
ย 
Spring Framework 5.2: Core Container Revisited
Spring Framework 5.2: Core Container RevisitedSpring Framework 5.2: Core Container Revisited
Spring Framework 5.2: Core Container Revisited
VMware Tanzu
ย 
Changes in WebLogic 12.1.3 Every Administrator Must Know
Changes in WebLogic 12.1.3 Every Administrator Must KnowChanges in WebLogic 12.1.3 Every Administrator Must Know
Changes in WebLogic 12.1.3 Every Administrator Must Know
Bruno Borges
ย 
Azure DevOps for JavaScript Developers
Azure DevOps for JavaScript DevelopersAzure DevOps for JavaScript Developers
Azure DevOps for JavaScript Developers
Sarah Dutkiewicz
ย 
Software Defined Networking: The OpenDaylight Project
Software Defined Networking: The OpenDaylight ProjectSoftware Defined Networking: The OpenDaylight Project
Software Defined Networking: The OpenDaylight Project
Great Wide Open
ย 
JDBC Next: A New Asynchronous API for Connecting to a Database
JDBC Next: A New Asynchronous API for Connecting to a Database JDBC Next: A New Asynchronous API for Connecting to a Database
JDBC Next: A New Asynchronous API for Connecting to a Database
Yolande Poirier
ย 
Database Migrations with Gradle and Liquibase
Database Migrations with Gradle and LiquibaseDatabase Migrations with Gradle and Liquibase
Database Migrations with Gradle and Liquibase
Dan Stine
ย 
Java EE 7 for WebLogic 12c Developers
Java EE 7 for WebLogic 12c DevelopersJava EE 7 for WebLogic 12c Developers
Java EE 7 for WebLogic 12c Developers
Bruno Borges
ย 
Servlet programming
Servlet programmingServlet programming
Servlet programming
Mallikarjuna G D
ย 
How and why to upgrade to java 16 or 17
How and why to upgrade to java 16 or 17How and why to upgrade to java 16 or 17
How and why to upgrade to java 16 or 17
Johan Janssen
ย 
Servlet programming
Servlet programmingServlet programming
Servlet programming
Mallikarjuna G D
ย 
Reactive Applications with Apache Pulsar and Spring Boot
Reactive Applications with Apache Pulsar and Spring BootReactive Applications with Apache Pulsar and Spring Boot
Reactive Applications with Apache Pulsar and Spring Boot
VMware Tanzu
ย 
The Eclipse Transformer Project
The Eclipse Transformer Project The Eclipse Transformer Project
The Eclipse Transformer Project
Jakarta_EE
ย 
Contributors Guide to the Jakarta EE 10 Galaxy
Contributors Guide to the Jakarta EE 10 GalaxyContributors Guide to the Jakarta EE 10 Galaxy
Contributors Guide to the Jakarta EE 10 Galaxy
Jakarta_EE
ย 
Haj 4308-open jpa, eclipselink, and the migration toolkit
Haj 4308-open jpa, eclipselink, and the migration toolkitHaj 4308-open jpa, eclipselink, and the migration toolkit
Haj 4308-open jpa, eclipselink, and the migration toolkit
Kevin Sutter
ย 
SOA Suite 12c Customer implementation
SOA Suite 12c Customer implementationSOA Suite 12c Customer implementation
SOA Suite 12c Customer implementation
Michel Schildmeijer
ย 
Exachk and oem12c - IOUG C15LV
Exachk and oem12c - IOUG C15LVExachk and oem12c - IOUG C15LV
Exachk and oem12c - IOUG C15LV
Bobby Curtis
ย 
Oracle GoldenGate on Docker
Oracle GoldenGate on DockerOracle GoldenGate on Docker
Oracle GoldenGate on Docker
Bobby Curtis
ย 
Apache DeltaSpike the CDI toolbox
Apache DeltaSpike the CDI toolboxApache DeltaSpike the CDI toolbox
Apache DeltaSpike the CDI toolbox
Antoine Sabot-Durand
ย 
Select Star: Unified Batch & Streaming with Flink SQL & Pulsar
Select Star: Unified Batch & Streaming with Flink SQL & PulsarSelect Star: Unified Batch & Streaming with Flink SQL & Pulsar
Select Star: Unified Batch & Streaming with Flink SQL & Pulsar
Caito Scherr
ย 
The Making of the Oracle R2DBC Driver and How to Take Your Code from Synchron...
The Making of the Oracle R2DBC Driver and How to Take Your Code from Synchron...The Making of the Oracle R2DBC Driver and How to Take Your Code from Synchron...
The Making of the Oracle R2DBC Driver and How to Take Your Code from Synchron...
VMware Tanzu
ย 
Spring Framework 5.2: Core Container Revisited
Spring Framework 5.2: Core Container RevisitedSpring Framework 5.2: Core Container Revisited
Spring Framework 5.2: Core Container Revisited
VMware Tanzu
ย 

Similar to Upgrading Oracle SOA Suite 10g to 11g (whitepaper) (20)

Upgrading Oracle SOA Suite to 11g: A Real-World Success Story
Upgrading Oracle SOA Suite to 11g: A Real-World Success StoryUpgrading Oracle SOA Suite to 11g: A Real-World Success Story
Upgrading Oracle SOA Suite to 11g: A Real-World Success Story
Revelation Technologies
ย 
Fusion Middleware 12c Upgrade - Standalone server
Fusion Middleware 12c Upgrade - Standalone serverFusion Middleware 12c Upgrade - Standalone server
Fusion Middleware 12c Upgrade - Standalone server
K Kumar Guduru
ย 
Embedding Oracle Weblogic Server 1871199
Embedding Oracle Weblogic Server 1871199Embedding Oracle Weblogic Server 1871199
Embedding Oracle Weblogic Server 1871199
cwspeaks
ย 
Quickstartguidesoasuite11gr1ps4 459545
Quickstartguidesoasuite11gr1ps4 459545Quickstartguidesoasuite11gr1ps4 459545
Quickstartguidesoasuite11gr1ps4 459545
Sensei64
ย 
What Every Client Should Do On Their Oracle SOA Projects (whitepaper)
What Every Client Should Do On Their Oracle SOA Projects (whitepaper)What Every Client Should Do On Their Oracle SOA Projects (whitepaper)
What Every Client Should Do On Their Oracle SOA Projects (whitepaper)
Revelation Technologies
ย 
Oracle fusion middleware training with placements and certification
Oracle fusion middleware training with placements and certificationOracle fusion middleware training with placements and certification
Oracle fusion middleware training with placements and certification
magnificsmily
ย 
Wp soa-suite-11gr1-2-129551
Wp soa-suite-11gr1-2-129551Wp soa-suite-11gr1-2-129551
Wp soa-suite-11gr1-2-129551
xavier john
ย 
OOW16 - Deploying Oracle E-Business Suite for On-Premises Cloud and Oracle Cl...
OOW16 - Deploying Oracle E-Business Suite for On-Premises Cloud and Oracle Cl...OOW16 - Deploying Oracle E-Business Suite for On-Premises Cloud and Oracle Cl...
OOW16 - Deploying Oracle E-Business Suite for On-Premises Cloud and Oracle Cl...
vasuballa
ย 
New Enhancements + Upgrade Path to Oracle EBS R12.1.3
New Enhancements + Upgrade Path to Oracle EBS R12.1.3New Enhancements + Upgrade Path to Oracle EBS R12.1.3
New Enhancements + Upgrade Path to Oracle EBS R12.1.3
iWare Logic Technologies Pvt. Ltd.
ย 
11g r2 upgrade_companion_280
11g r2 upgrade_companion_28011g r2 upgrade_companion_280
11g r2 upgrade_companion_280
RAVI KR. SHRIVASTAVA
ย 
A journey from oracle e
A journey from oracle eA journey from oracle e
A journey from oracle e
ansalapi
ย 
owb-11gr2-code-template-mappings-133311
owb-11gr2-code-template-mappings-133311owb-11gr2-code-template-mappings-133311
owb-11gr2-code-template-mappings-133311
Carnot Antonio Romero
ย 
WilliamArthur-Resume-1
WilliamArthur-Resume-1WilliamArthur-Resume-1
WilliamArthur-Resume-1
Ted Arthur
ย 
Amjad_Oracle_2016
Amjad_Oracle_2016Amjad_Oracle_2016
Amjad_Oracle_2016
Amjad Shaikh
ย 
Advantages of running Oracle 11g on Microsoft Windows Server x64
Advantages of running Oracle 11g on Microsoft Windows Server x64Advantages of running Oracle 11g on Microsoft Windows Server x64
Advantages of running Oracle 11g on Microsoft Windows Server x64
Performance Tuning Corporation
ย 
Odi 11g-new-features-overview-1622677
Odi 11g-new-features-overview-1622677Odi 11g-new-features-overview-1622677
Odi 11g-new-features-overview-1622677
Sandeep Jella
ย 
Installing and Invoking Oracle Data Integrator (ODI) Public Web Services (whi...
Installing and Invoking Oracle Data Integrator (ODI) Public Web Services (whi...Installing and Invoking Oracle Data Integrator (ODI) Public Web Services (whi...
Installing and Invoking Oracle Data Integrator (ODI) Public Web Services (whi...
Revelation Technologies
ย 
Weblogic 12c Graphical Mode installation steps in Windows
Weblogic 12c Graphical Mode installation steps in Windows Weblogic 12c Graphical Mode installation steps in Windows
Weblogic 12c Graphical Mode installation steps in Windows
webservicesm
ย 
12c weblogic installation steps for Windows
12c weblogic installation steps for Windows12c weblogic installation steps for Windows
12c weblogic installation steps for Windows
Cognizant
ย 
ZDM+21.2c+-+Technical+Brief.pdf
ZDM+21.2c+-+Technical+Brief.pdfZDM+21.2c+-+Technical+Brief.pdf
ZDM+21.2c+-+Technical+Brief.pdf
ssuser556a63
ย 
Upgrading Oracle SOA Suite to 11g: A Real-World Success Story
Upgrading Oracle SOA Suite to 11g: A Real-World Success StoryUpgrading Oracle SOA Suite to 11g: A Real-World Success Story
Upgrading Oracle SOA Suite to 11g: A Real-World Success Story
Revelation Technologies
ย 
Fusion Middleware 12c Upgrade - Standalone server
Fusion Middleware 12c Upgrade - Standalone serverFusion Middleware 12c Upgrade - Standalone server
Fusion Middleware 12c Upgrade - Standalone server
K Kumar Guduru
ย 
Embedding Oracle Weblogic Server 1871199
Embedding Oracle Weblogic Server 1871199Embedding Oracle Weblogic Server 1871199
Embedding Oracle Weblogic Server 1871199
cwspeaks
ย 
Quickstartguidesoasuite11gr1ps4 459545
Quickstartguidesoasuite11gr1ps4 459545Quickstartguidesoasuite11gr1ps4 459545
Quickstartguidesoasuite11gr1ps4 459545
Sensei64
ย 
What Every Client Should Do On Their Oracle SOA Projects (whitepaper)
What Every Client Should Do On Their Oracle SOA Projects (whitepaper)What Every Client Should Do On Their Oracle SOA Projects (whitepaper)
What Every Client Should Do On Their Oracle SOA Projects (whitepaper)
Revelation Technologies
ย 
Oracle fusion middleware training with placements and certification
Oracle fusion middleware training with placements and certificationOracle fusion middleware training with placements and certification
Oracle fusion middleware training with placements and certification
magnificsmily
ย 
Wp soa-suite-11gr1-2-129551
Wp soa-suite-11gr1-2-129551Wp soa-suite-11gr1-2-129551
Wp soa-suite-11gr1-2-129551
xavier john
ย 
OOW16 - Deploying Oracle E-Business Suite for On-Premises Cloud and Oracle Cl...
OOW16 - Deploying Oracle E-Business Suite for On-Premises Cloud and Oracle Cl...OOW16 - Deploying Oracle E-Business Suite for On-Premises Cloud and Oracle Cl...
OOW16 - Deploying Oracle E-Business Suite for On-Premises Cloud and Oracle Cl...
vasuballa
ย 
New Enhancements + Upgrade Path to Oracle EBS R12.1.3
New Enhancements + Upgrade Path to Oracle EBS R12.1.3New Enhancements + Upgrade Path to Oracle EBS R12.1.3
New Enhancements + Upgrade Path to Oracle EBS R12.1.3
iWare Logic Technologies Pvt. Ltd.
ย 
11g r2 upgrade_companion_280
11g r2 upgrade_companion_28011g r2 upgrade_companion_280
11g r2 upgrade_companion_280
RAVI KR. SHRIVASTAVA
ย 
A journey from oracle e
A journey from oracle eA journey from oracle e
A journey from oracle e
ansalapi
ย 
owb-11gr2-code-template-mappings-133311
owb-11gr2-code-template-mappings-133311owb-11gr2-code-template-mappings-133311
owb-11gr2-code-template-mappings-133311
Carnot Antonio Romero
ย 
WilliamArthur-Resume-1
WilliamArthur-Resume-1WilliamArthur-Resume-1
WilliamArthur-Resume-1
Ted Arthur
ย 
Amjad_Oracle_2016
Amjad_Oracle_2016Amjad_Oracle_2016
Amjad_Oracle_2016
Amjad Shaikh
ย 
Advantages of running Oracle 11g on Microsoft Windows Server x64
Advantages of running Oracle 11g on Microsoft Windows Server x64Advantages of running Oracle 11g on Microsoft Windows Server x64
Advantages of running Oracle 11g on Microsoft Windows Server x64
Performance Tuning Corporation
ย 
Odi 11g-new-features-overview-1622677
Odi 11g-new-features-overview-1622677Odi 11g-new-features-overview-1622677
Odi 11g-new-features-overview-1622677
Sandeep Jella
ย 
Installing and Invoking Oracle Data Integrator (ODI) Public Web Services (whi...
Installing and Invoking Oracle Data Integrator (ODI) Public Web Services (whi...Installing and Invoking Oracle Data Integrator (ODI) Public Web Services (whi...
Installing and Invoking Oracle Data Integrator (ODI) Public Web Services (whi...
Revelation Technologies
ย 
Weblogic 12c Graphical Mode installation steps in Windows
Weblogic 12c Graphical Mode installation steps in Windows Weblogic 12c Graphical Mode installation steps in Windows
Weblogic 12c Graphical Mode installation steps in Windows
webservicesm
ย 
12c weblogic installation steps for Windows
12c weblogic installation steps for Windows12c weblogic installation steps for Windows
12c weblogic installation steps for Windows
Cognizant
ย 
ZDM+21.2c+-+Technical+Brief.pdf
ZDM+21.2c+-+Technical+Brief.pdfZDM+21.2c+-+Technical+Brief.pdf
ZDM+21.2c+-+Technical+Brief.pdf
ssuser556a63
ย 
Ad

More from Revelation Technologies (20)

Operating System Security in the Cloud
Operating System Security in the CloudOperating System Security in the Cloud
Operating System Security in the Cloud
Revelation Technologies
ย 
Getting Started with Terraform
Getting Started with TerraformGetting Started with Terraform
Getting Started with Terraform
Revelation Technologies
ย 
Getting Started with API Management
Getting Started with API ManagementGetting Started with API Management
Getting Started with API Management
Revelation Technologies
ย 
Automating Cloud Operations: Everything You Wanted to Know about cURL and REST
Automating Cloud Operations: Everything You Wanted to Know about cURL and RESTAutomating Cloud Operations: Everything You Wanted to Know about cURL and REST
Automating Cloud Operations: Everything You Wanted to Know about cURL and REST
Revelation Technologies
ย 
Getting Started with API Management โ€“ Why It's Needed On-prem and in the Cloud
Getting Started with API Management โ€“ Why It's Needed On-prem and in the CloudGetting Started with API Management โ€“ Why It's Needed On-prem and in the Cloud
Getting Started with API Management โ€“ Why It's Needed On-prem and in the Cloud
Revelation Technologies
ย 
Automating Cloud Operations - Everything you wanted to know about cURL and RE...
Automating Cloud Operations - Everything you wanted to know about cURL and RE...Automating Cloud Operations - Everything you wanted to know about cURL and RE...
Automating Cloud Operations - Everything you wanted to know about cURL and RE...
Revelation Technologies
ย 
Introducing the Oracle Cloud Infrastructure (OCI) Best Practices Framework
Introducing the Oracle Cloud Infrastructure (OCI) Best Practices FrameworkIntroducing the Oracle Cloud Infrastructure (OCI) Best Practices Framework
Introducing the Oracle Cloud Infrastructure (OCI) Best Practices Framework
Revelation Technologies
ย 
Everything You Need to Know About the Microsoft Azure and Oracle Cloud Interc...
Everything You Need to Know About the Microsoft Azure and Oracle Cloud Interc...Everything You Need to Know About the Microsoft Azure and Oracle Cloud Interc...
Everything You Need to Know About the Microsoft Azure and Oracle Cloud Interc...
Revelation Technologies
ย 
PTK Issue 72: Delivering a Platform on Demand
PTK Issue 72: Delivering a Platform on DemandPTK Issue 72: Delivering a Platform on Demand
PTK Issue 72: Delivering a Platform on Demand
Revelation Technologies
ย 
PTK Issue 71: The Compute Cloud Performance Showdown
PTK Issue 71: The Compute Cloud Performance ShowdownPTK Issue 71: The Compute Cloud Performance Showdown
PTK Issue 71: The Compute Cloud Performance Showdown
Revelation Technologies
ย 
Everything You Need to Know About the Microsoft Azure and Oracle Cloud Interc...
Everything You Need to Know About the Microsoft Azure and Oracle Cloud Interc...Everything You Need to Know About the Microsoft Azure and Oracle Cloud Interc...
Everything You Need to Know About the Microsoft Azure and Oracle Cloud Interc...
Revelation Technologies
ย 
Compute Cloud Performance Showdown: 18 Months Later (OCI, AWS, IBM Cloud, GCP...
Compute Cloud Performance Showdown: 18 Months Later (OCI, AWS, IBM Cloud, GCP...Compute Cloud Performance Showdown: 18 Months Later (OCI, AWS, IBM Cloud, GCP...
Compute Cloud Performance Showdown: 18 Months Later (OCI, AWS, IBM Cloud, GCP...
Revelation Technologies
ย 
Compute Cloud Performance Showdown: 18 Months Later (OCI, AWS, IBM Cloud, GCP...
Compute Cloud Performance Showdown: 18 Months Later (OCI, AWS, IBM Cloud, GCP...Compute Cloud Performance Showdown: 18 Months Later (OCI, AWS, IBM Cloud, GCP...
Compute Cloud Performance Showdown: 18 Months Later (OCI, AWS, IBM Cloud, GCP...
Revelation Technologies
ย 
The Microsoft Azure and Oracle Cloud Interconnect Everything You Need to Know
The Microsoft Azure and Oracle Cloud Interconnect Everything You Need to KnowThe Microsoft Azure and Oracle Cloud Interconnect Everything You Need to Know
The Microsoft Azure and Oracle Cloud Interconnect Everything You Need to Know
Revelation Technologies
ย 
Cloud Integration Strategy
Cloud Integration StrategyCloud Integration Strategy
Cloud Integration Strategy
Revelation Technologies
ย 
Compute Cloud Performance Showdown: Amazon Web Services, Oracle Cloud, IBM ...
Compute Cloud  Performance Showdown: Amazon Web Services, Oracle  Cloud, IBM ...Compute Cloud  Performance Showdown: Amazon Web Services, Oracle  Cloud, IBM ...
Compute Cloud Performance Showdown: Amazon Web Services, Oracle Cloud, IBM ...
Revelation Technologies
ย 
Securing your Oracle Fusion Middleware Environment, On-Prem and in the Cloud
Securing your Oracle Fusion Middleware Environment, On-Prem and in the CloudSecuring your Oracle Fusion Middleware Environment, On-Prem and in the Cloud
Securing your Oracle Fusion Middleware Environment, On-Prem and in the Cloud
Revelation Technologies
ย 
Hands-On with Oracle SOA Cloud Service
Hands-On with Oracle SOA Cloud ServiceHands-On with Oracle SOA Cloud Service
Hands-On with Oracle SOA Cloud Service
Revelation Technologies
ย 
Oracle BPM Suite Development: Getting Started
Oracle BPM Suite Development: Getting StartedOracle BPM Suite Development: Getting Started
Oracle BPM Suite Development: Getting Started
Revelation Technologies
ย 
Developing Web Services from Scratch - For DBAs and Database Developers
Developing Web Services from Scratch - For DBAs and Database DevelopersDeveloping Web Services from Scratch - For DBAs and Database Developers
Developing Web Services from Scratch - For DBAs and Database Developers
Revelation Technologies
ย 
Operating System Security in the Cloud
Operating System Security in the CloudOperating System Security in the Cloud
Operating System Security in the Cloud
Revelation Technologies
ย 
Getting Started with API Management
Getting Started with API ManagementGetting Started with API Management
Getting Started with API Management
Revelation Technologies
ย 
Automating Cloud Operations: Everything You Wanted to Know about cURL and REST
Automating Cloud Operations: Everything You Wanted to Know about cURL and RESTAutomating Cloud Operations: Everything You Wanted to Know about cURL and REST
Automating Cloud Operations: Everything You Wanted to Know about cURL and REST
Revelation Technologies
ย 
Getting Started with API Management โ€“ Why It's Needed On-prem and in the Cloud
Getting Started with API Management โ€“ Why It's Needed On-prem and in the CloudGetting Started with API Management โ€“ Why It's Needed On-prem and in the Cloud
Getting Started with API Management โ€“ Why It's Needed On-prem and in the Cloud
Revelation Technologies
ย 
Automating Cloud Operations - Everything you wanted to know about cURL and RE...
Automating Cloud Operations - Everything you wanted to know about cURL and RE...Automating Cloud Operations - Everything you wanted to know about cURL and RE...
Automating Cloud Operations - Everything you wanted to know about cURL and RE...
Revelation Technologies
ย 
Introducing the Oracle Cloud Infrastructure (OCI) Best Practices Framework
Introducing the Oracle Cloud Infrastructure (OCI) Best Practices FrameworkIntroducing the Oracle Cloud Infrastructure (OCI) Best Practices Framework
Introducing the Oracle Cloud Infrastructure (OCI) Best Practices Framework
Revelation Technologies
ย 
Everything You Need to Know About the Microsoft Azure and Oracle Cloud Interc...
Everything You Need to Know About the Microsoft Azure and Oracle Cloud Interc...Everything You Need to Know About the Microsoft Azure and Oracle Cloud Interc...
Everything You Need to Know About the Microsoft Azure and Oracle Cloud Interc...
Revelation Technologies
ย 
PTK Issue 72: Delivering a Platform on Demand
PTK Issue 72: Delivering a Platform on DemandPTK Issue 72: Delivering a Platform on Demand
PTK Issue 72: Delivering a Platform on Demand
Revelation Technologies
ย 
PTK Issue 71: The Compute Cloud Performance Showdown
PTK Issue 71: The Compute Cloud Performance ShowdownPTK Issue 71: The Compute Cloud Performance Showdown
PTK Issue 71: The Compute Cloud Performance Showdown
Revelation Technologies
ย 
Everything You Need to Know About the Microsoft Azure and Oracle Cloud Interc...
Everything You Need to Know About the Microsoft Azure and Oracle Cloud Interc...Everything You Need to Know About the Microsoft Azure and Oracle Cloud Interc...
Everything You Need to Know About the Microsoft Azure and Oracle Cloud Interc...
Revelation Technologies
ย 
Compute Cloud Performance Showdown: 18 Months Later (OCI, AWS, IBM Cloud, GCP...
Compute Cloud Performance Showdown: 18 Months Later (OCI, AWS, IBM Cloud, GCP...Compute Cloud Performance Showdown: 18 Months Later (OCI, AWS, IBM Cloud, GCP...
Compute Cloud Performance Showdown: 18 Months Later (OCI, AWS, IBM Cloud, GCP...
Revelation Technologies
ย 
Compute Cloud Performance Showdown: 18 Months Later (OCI, AWS, IBM Cloud, GCP...
Compute Cloud Performance Showdown: 18 Months Later (OCI, AWS, IBM Cloud, GCP...Compute Cloud Performance Showdown: 18 Months Later (OCI, AWS, IBM Cloud, GCP...
Compute Cloud Performance Showdown: 18 Months Later (OCI, AWS, IBM Cloud, GCP...
Revelation Technologies
ย 
The Microsoft Azure and Oracle Cloud Interconnect Everything You Need to Know
The Microsoft Azure and Oracle Cloud Interconnect Everything You Need to KnowThe Microsoft Azure and Oracle Cloud Interconnect Everything You Need to Know
The Microsoft Azure and Oracle Cloud Interconnect Everything You Need to Know
Revelation Technologies
ย 
Compute Cloud Performance Showdown: Amazon Web Services, Oracle Cloud, IBM ...
Compute Cloud  Performance Showdown: Amazon Web Services, Oracle  Cloud, IBM ...Compute Cloud  Performance Showdown: Amazon Web Services, Oracle  Cloud, IBM ...
Compute Cloud Performance Showdown: Amazon Web Services, Oracle Cloud, IBM ...
Revelation Technologies
ย 
Securing your Oracle Fusion Middleware Environment, On-Prem and in the Cloud
Securing your Oracle Fusion Middleware Environment, On-Prem and in the CloudSecuring your Oracle Fusion Middleware Environment, On-Prem and in the Cloud
Securing your Oracle Fusion Middleware Environment, On-Prem and in the Cloud
Revelation Technologies
ย 
Hands-On with Oracle SOA Cloud Service
Hands-On with Oracle SOA Cloud ServiceHands-On with Oracle SOA Cloud Service
Hands-On with Oracle SOA Cloud Service
Revelation Technologies
ย 
Oracle BPM Suite Development: Getting Started
Oracle BPM Suite Development: Getting StartedOracle BPM Suite Development: Getting Started
Oracle BPM Suite Development: Getting Started
Revelation Technologies
ย 
Developing Web Services from Scratch - For DBAs and Database Developers
Developing Web Services from Scratch - For DBAs and Database DevelopersDeveloping Web Services from Scratch - For DBAs and Database Developers
Developing Web Services from Scratch - For DBAs and Database Developers
Revelation Technologies
ย 
Ad

Recently uploaded (20)

AI and Data Privacy in 2025: Global Trends
AI and Data Privacy in 2025: Global TrendsAI and Data Privacy in 2025: Global Trends
AI and Data Privacy in 2025: Global Trends
InData Labs
ย 
AI EngineHost Review: Revolutionary USA Datacenter-Based Hosting with NVIDIA ...
AI EngineHost Review: Revolutionary USA Datacenter-Based Hosting with NVIDIA ...AI EngineHost Review: Revolutionary USA Datacenter-Based Hosting with NVIDIA ...
AI EngineHost Review: Revolutionary USA Datacenter-Based Hosting with NVIDIA ...
SOFTTECHHUB
ย 
Network Security. Different aspects of Network Security.
Network Security. Different aspects of Network Security.Network Security. Different aspects of Network Security.
Network Security. Different aspects of Network Security.
gregtap1
ย 
Rusty Waters: Elevating Lakehouses Beyond Spark
Rusty Waters: Elevating Lakehouses Beyond SparkRusty Waters: Elevating Lakehouses Beyond Spark
Rusty Waters: Elevating Lakehouses Beyond Spark
carlyakerly1
ย 
Rock, Paper, Scissors: An Apex Map Learning Journey
Rock, Paper, Scissors: An Apex Map Learning JourneyRock, Paper, Scissors: An Apex Map Learning Journey
Rock, Paper, Scissors: An Apex Map Learning Journey
Lynda Kane
ย 
Special Meetup Edition - TDX Bengaluru Meetup #52.pptx
Special Meetup Edition - TDX Bengaluru Meetup #52.pptxSpecial Meetup Edition - TDX Bengaluru Meetup #52.pptx
Special Meetup Edition - TDX Bengaluru Meetup #52.pptx
shyamraj55
ย 
Automation Dreamin': Capture User Feedback From Anywhere
Automation Dreamin': Capture User Feedback From AnywhereAutomation Dreamin': Capture User Feedback From Anywhere
Automation Dreamin': Capture User Feedback From Anywhere
Lynda Kane
ย 
2025-05-Q4-2024-Investor-Presentation.pptx
2025-05-Q4-2024-Investor-Presentation.pptx2025-05-Q4-2024-Investor-Presentation.pptx
2025-05-Q4-2024-Investor-Presentation.pptx
Samuele Fogagnolo
ย 
Automation Dreamin' 2022: Sharing Some Gratitude with Your Users
Automation Dreamin' 2022: Sharing Some Gratitude with Your UsersAutomation Dreamin' 2022: Sharing Some Gratitude with Your Users
Automation Dreamin' 2022: Sharing Some Gratitude with Your Users
Lynda Kane
ย 
Procurement Insights Cost To Value Guide.pptx
Procurement Insights Cost To Value Guide.pptxProcurement Insights Cost To Value Guide.pptx
Procurement Insights Cost To Value Guide.pptx
Jon Hansen
ย 
Linux Professional Institute LPIC-1 Exam.pdf
Linux Professional Institute LPIC-1 Exam.pdfLinux Professional Institute LPIC-1 Exam.pdf
Linux Professional Institute LPIC-1 Exam.pdf
RHCSA Guru
ย 
Datastucture-Unit 4-Linked List Presentation.pptx
Datastucture-Unit 4-Linked List Presentation.pptxDatastucture-Unit 4-Linked List Presentation.pptx
Datastucture-Unit 4-Linked List Presentation.pptx
kaleeswaric3
ย 
Image processinglab image processing image processing
Image processinglab image processing  image processingImage processinglab image processing  image processing
Image processinglab image processing image processing
RaghadHany
ย 
How Can I use the AI Hype in my Business Context?
How Can I use the AI Hype in my Business Context?How Can I use the AI Hype in my Business Context?
How Can I use the AI Hype in my Business Context?
Daniel Lehner
ย 
Asthma presentaciรณn en inglรฉs abril 2025 pdf
Asthma presentaciรณn en inglรฉs abril 2025 pdfAsthma presentaciรณn en inglรฉs abril 2025 pdf
Asthma presentaciรณn en inglรฉs abril 2025 pdf
VanessaRaudez
ย 
"Client Partnership โ€” the Path to Exponential Growth for Companies Sized 50-5...
"Client Partnership โ€” the Path to Exponential Growth for Companies Sized 50-5..."Client Partnership โ€” the Path to Exponential Growth for Companies Sized 50-5...
"Client Partnership โ€” the Path to Exponential Growth for Companies Sized 50-5...
Fwdays
ย 
"PHP and MySQL CRUD Operations for Student Management System"
"PHP and MySQL CRUD Operations for Student Management System""PHP and MySQL CRUD Operations for Student Management System"
"PHP and MySQL CRUD Operations for Student Management System"
Jainul Musani
ย 
UiPath Community Berlin: Orchestrator API, Swagger, and Test Manager API
UiPath Community Berlin: Orchestrator API, Swagger, and Test Manager APIUiPath Community Berlin: Orchestrator API, Swagger, and Test Manager API
UiPath Community Berlin: Orchestrator API, Swagger, and Test Manager API
UiPathCommunity
ย 
Enhancing ICU Intelligence: How Our Functional Testing Enabled a Healthcare I...
Enhancing ICU Intelligence: How Our Functional Testing Enabled a Healthcare I...Enhancing ICU Intelligence: How Our Functional Testing Enabled a Healthcare I...
Enhancing ICU Intelligence: How Our Functional Testing Enabled a Healthcare I...
Impelsys Inc.
ย 
Buckeye Dreamin' 2023: De-fogging Debug Logs
Buckeye Dreamin' 2023: De-fogging Debug LogsBuckeye Dreamin' 2023: De-fogging Debug Logs
Buckeye Dreamin' 2023: De-fogging Debug Logs
Lynda Kane
ย 
AI and Data Privacy in 2025: Global Trends
AI and Data Privacy in 2025: Global TrendsAI and Data Privacy in 2025: Global Trends
AI and Data Privacy in 2025: Global Trends
InData Labs
ย 
AI EngineHost Review: Revolutionary USA Datacenter-Based Hosting with NVIDIA ...
AI EngineHost Review: Revolutionary USA Datacenter-Based Hosting with NVIDIA ...AI EngineHost Review: Revolutionary USA Datacenter-Based Hosting with NVIDIA ...
AI EngineHost Review: Revolutionary USA Datacenter-Based Hosting with NVIDIA ...
SOFTTECHHUB
ย 
Network Security. Different aspects of Network Security.
Network Security. Different aspects of Network Security.Network Security. Different aspects of Network Security.
Network Security. Different aspects of Network Security.
gregtap1
ย 
Rusty Waters: Elevating Lakehouses Beyond Spark
Rusty Waters: Elevating Lakehouses Beyond SparkRusty Waters: Elevating Lakehouses Beyond Spark
Rusty Waters: Elevating Lakehouses Beyond Spark
carlyakerly1
ย 
Rock, Paper, Scissors: An Apex Map Learning Journey
Rock, Paper, Scissors: An Apex Map Learning JourneyRock, Paper, Scissors: An Apex Map Learning Journey
Rock, Paper, Scissors: An Apex Map Learning Journey
Lynda Kane
ย 
Special Meetup Edition - TDX Bengaluru Meetup #52.pptx
Special Meetup Edition - TDX Bengaluru Meetup #52.pptxSpecial Meetup Edition - TDX Bengaluru Meetup #52.pptx
Special Meetup Edition - TDX Bengaluru Meetup #52.pptx
shyamraj55
ย 
Automation Dreamin': Capture User Feedback From Anywhere
Automation Dreamin': Capture User Feedback From AnywhereAutomation Dreamin': Capture User Feedback From Anywhere
Automation Dreamin': Capture User Feedback From Anywhere
Lynda Kane
ย 
2025-05-Q4-2024-Investor-Presentation.pptx
2025-05-Q4-2024-Investor-Presentation.pptx2025-05-Q4-2024-Investor-Presentation.pptx
2025-05-Q4-2024-Investor-Presentation.pptx
Samuele Fogagnolo
ย 
Automation Dreamin' 2022: Sharing Some Gratitude with Your Users
Automation Dreamin' 2022: Sharing Some Gratitude with Your UsersAutomation Dreamin' 2022: Sharing Some Gratitude with Your Users
Automation Dreamin' 2022: Sharing Some Gratitude with Your Users
Lynda Kane
ย 
Procurement Insights Cost To Value Guide.pptx
Procurement Insights Cost To Value Guide.pptxProcurement Insights Cost To Value Guide.pptx
Procurement Insights Cost To Value Guide.pptx
Jon Hansen
ย 
Linux Professional Institute LPIC-1 Exam.pdf
Linux Professional Institute LPIC-1 Exam.pdfLinux Professional Institute LPIC-1 Exam.pdf
Linux Professional Institute LPIC-1 Exam.pdf
RHCSA Guru
ย 
Datastucture-Unit 4-Linked List Presentation.pptx
Datastucture-Unit 4-Linked List Presentation.pptxDatastucture-Unit 4-Linked List Presentation.pptx
Datastucture-Unit 4-Linked List Presentation.pptx
kaleeswaric3
ย 
Image processinglab image processing image processing
Image processinglab image processing  image processingImage processinglab image processing  image processing
Image processinglab image processing image processing
RaghadHany
ย 
How Can I use the AI Hype in my Business Context?
How Can I use the AI Hype in my Business Context?How Can I use the AI Hype in my Business Context?
How Can I use the AI Hype in my Business Context?
Daniel Lehner
ย 
Asthma presentaciรณn en inglรฉs abril 2025 pdf
Asthma presentaciรณn en inglรฉs abril 2025 pdfAsthma presentaciรณn en inglรฉs abril 2025 pdf
Asthma presentaciรณn en inglรฉs abril 2025 pdf
VanessaRaudez
ย 
"Client Partnership โ€” the Path to Exponential Growth for Companies Sized 50-5...
"Client Partnership โ€” the Path to Exponential Growth for Companies Sized 50-5..."Client Partnership โ€” the Path to Exponential Growth for Companies Sized 50-5...
"Client Partnership โ€” the Path to Exponential Growth for Companies Sized 50-5...
Fwdays
ย 
"PHP and MySQL CRUD Operations for Student Management System"
"PHP and MySQL CRUD Operations for Student Management System""PHP and MySQL CRUD Operations for Student Management System"
"PHP and MySQL CRUD Operations for Student Management System"
Jainul Musani
ย 
UiPath Community Berlin: Orchestrator API, Swagger, and Test Manager API
UiPath Community Berlin: Orchestrator API, Swagger, and Test Manager APIUiPath Community Berlin: Orchestrator API, Swagger, and Test Manager API
UiPath Community Berlin: Orchestrator API, Swagger, and Test Manager API
UiPathCommunity
ย 
Enhancing ICU Intelligence: How Our Functional Testing Enabled a Healthcare I...
Enhancing ICU Intelligence: How Our Functional Testing Enabled a Healthcare I...Enhancing ICU Intelligence: How Our Functional Testing Enabled a Healthcare I...
Enhancing ICU Intelligence: How Our Functional Testing Enabled a Healthcare I...
Impelsys Inc.
ย 
Buckeye Dreamin' 2023: De-fogging Debug Logs
Buckeye Dreamin' 2023: De-fogging Debug LogsBuckeye Dreamin' 2023: De-fogging Debug Logs
Buckeye Dreamin' 2023: De-fogging Debug Logs
Lynda Kane
ย 

Upgrading Oracle SOA Suite 10g to 11g (whitepaper)

  • 1. UPGRADING ORACLE SOA SUITE 10G TO 11G A White Paper prepared by Raastech for IOUG and presented at Collaborate 11 Author Ahmed Aboulnaga Copyright Raastech 2011
  • 2. UPGRADING ORACLE SOA SUITE 10G TO 11G Raastech White Paper ๏ฎ 2 / 33 INTRODUCTION This white paper walks through an approach that assists in the complicated process of upgrading from Oracle SOA Suite 10g (10.1.3.x) to Oracle SOA Suite 11g (11.1.1.3+). Although the phrases are used interchangeably in this paper, the effort from moving from Oracle SOA Suite 10g to 11g is both an upgrade and a migration. The upgrade is result of moving to a new version of the same product, namely to Oracle SOA Suite 11g. The migration is the process of converting existing SOA Suite 10g code to enable it to deploy and execute on SOA Suite 11g. Thus, the two main aspects related to the upgrade process are typically: ๏‚ง Infrastructure upgrade ๏‚ง Code migration This paper focuses on the code migration process, and in specific the migration of BPEL and ESB code to their 11g equivalents in the form of BPEL and Mediator composites. The process is sometimes unclear, laborious, and introduces risk as a result of the underlying code being altered. The challenges of upgrading donโ€™t end there. Several core concepts have fundamentally changed with the introduction of SOA Suite 11g, and there is not enough direction as to what to do. Understandably, the Oracle documentation cannot cover every possible scenario. Also, not every area is covered in this white paper, such as human workflow or business rules. Applicable Versions The majority of SOA Suite 10g installations run on Oracle Application Server while the majority of SOA Suite 11g installations run on Oracle WebLogic Server, thus several instructions documented in this paper are specific to those application servers. This document can apply to most versions of Oracle SOA Suite 10g, including both 10.1.2.x and 10.1.3.x, but focuses mostly on upgrading to the following Oracle Fusion Middleware 11g components: ๏‚ง Oracle WebLogic Server 11g (10.3.3+) ๏‚ง Oracle SOA Suite 11g (11.1.1.3+)
  • 3. UPGRADING ORACLE SOA SUITE 10G TO 11G Raastech White Paper ๏ฎ 3 / 33 Audience This paper is intended for individuals who have prior development and/or administration experience with Oracle SOA Suite 10g, with a basic understanding of SOA Suite 11g, and thus is geared towards: ๏‚ง Oracle SOA Architects ๏‚ง Oracle SOA Developers ๏‚ง Oracle SOA Suite Administrators Overview of the Raastech Upgrade Process Raastech has developed an 8-step approach to upgrading from Oracle SOA Suite 10g to 11g. This white paper and its proposed underlying approach are not meant to replace the existing Oracle upgrade process or its documentation, but rather to augment it. The upgrade approach is divided into the following 8 sequential steps: 1. Understand the Upgrade Process 2. Infrastructure Installation 3. Application Server Setup 4. Develop the Deployment Process 5. Import Artifacts to the MDS 6. Upgrade the Projects 7. Post-Upgrade Steps 8. Test These steps will be described in varying detail throughout this white paper. But as shown here, we recommend performing certain infrastructure and configuration tasks (steps 2-5) before beginning the actual migration of the code itself (steps 6-7).
  • 4. UPGRADING ORACLE SOA SUITE 10G TO 11G Raastech White Paper ๏ฎ 4 / 33 1. UNDERSTAND THE UPGRADE PROCESS Prior to engaging in the upgrade project, it is important to gain an overall understanding of the upgrade process from existing Oracle documentation. Oracle has provided excellent documentation (referenced below) to assist you in the planning phase and points you to the appropriate technical documentation. The Oracle Upgrade Approach Oracle provides several documents that detail the entire upgrade effort, beginning at a high- level (as shown in Figure 1) and subsequently delving into details. Review the following Oracle documentation prior to beginning the upgrade project: ๏‚ง 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 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.htm Goal of Step 1 Obtain an overall understanding of the upgrade process by reviewing current Oracle documentation. Review the various Oracle documents referenced in this section to gain a better understanding of the overall upgrade process.
  • 5. UPGRADING ORACLE SOA SUITE 10G TO 11G Raastech White Paper ๏ฎ 5 / 33 Figure 1 below provides a flow diagram of the main steps involved in the upgrade process. This approach is correct and the Oracle documentation does a good job of pointing you to other resources, but there are specific details missing that are addressed later in this white paper. http://download.oracle.com/docs/cd/E17904_01/upgrade.1111/e10127/summary.htm#BABCFIEA Figure 1. The Oracle Upgrade Process
  • 6. UPGRADING ORACLE SOA SUITE 10G TO 11G Raastech White Paper ๏ฎ 6 / 33 2. INFRASTRUCTURE INSTALLATION Though we do not walk through details regarding the infrastructure architecture, high availability setup, or cutover approach, this step in the process is meant to emphasize the fact that both the SOA Suite 10g and the newly installed SOA Suite 11g environments used for development should be running in parallel duration of the code upgrade effort. The same applies to Test, QA, and ultimately Prod environments, until the actual cutover is completed. Install Oracle SOA Suite 11g Installing Oracle SOA Suite 11g (11.1.1.4) in a single-node architecture is rather straightforward and typically takes between 1 to 2 hours. The product stack is installed in the following order: ๏‚ง Install Oracle Database 11g (11.2.0.x) ๏‚ง Install Oracle WebLogic Server 11g (10.3.4) ๏‚ง Create SOA database schemas using the Repository Creation Utility (RCU) 11g ๏‚ง Install Oracle SOA Suite 11g (11.1.1.4) ๏‚ง Create SOA domain Refer to the Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite 11g Release 1 (11.1.1) for details regarding high availability: http://download.oracle.com/docs/cd/E12839_01/core.1111/e12036/toc.htm Goal of Step 2 Ensure that both the Oracle SOA Suite 10g and 11g environments are accessible during the upgrade effort. Since Oracle SOA Suite 11g is a new installation (not an in-place upgrade of the existing SOA Suite 10g), it is possible to maintain both environments temporarily, until the entire upgrade project is completed.
  • 7. UPGRADING ORACLE SOA SUITE 10G TO 11G Raastech White Paper ๏ฎ 7 / 33 Maintain Existing Oracle SOA Suite 10g Environment Upgrading the Oracle SOA Suite 10g infrastructure to 11g involves installing a completely new stack, as it is not an in-place upgrade (i.e., the existing 10g infrastructure is untouched). Thus, once developers upgrade their SOA 10g code, it will be deployed on to a completely new environment. This simplifies the development, testing, and cutover process. Keep the following in mind when setting up your development environment: ๏‚ง Data sources and connection factories for both the 10g and 11g infrastructures can point to same targets. ๏‚ง Turn off all services on the 10g infrastructure that does polling (e.g., JMS Adapter consume, AQ Adapter dequeue, DB Adapter polling). If not, polling services will compete on both the old and new infrastructures. Validation also becomes easier for developers. Simply submit the same payload to both the old and new environments, and confirm that results are identical on both environments.
  • 8. UPGRADING ORACLE SOA SUITE 10G TO 11G Raastech White Paper ๏ฎ 8 / 33 3. APPLICATION SERVER SETUP Certain setup must be performed on the 11g application server prior to upgrading your code. All out-of-the-box configurations need not be touched, and only custom configuration will need to be set identically in the new environment. This mostly includes data sources and connection factories. Partitions are a concept introduced with Oracle SOA Suite 11g (11.1.1.3), which helps better organize where to deploy your composites, and is addressed in the section. Any custom properties will also have to be migrated. Migrate Custom Data Sources and Connection Factories Data sources and Connection Factories are used by SOA code to connect to a resource or target system (e.g., AQ, JMS, database, etc.) without having the need to hardcode passwords within your code. For example, your SOA projects may be leveraging custom created JNDIs that take the following format: jdbc/db/PerfTest eis/db/PerfTest Goal of Step 3 Migrate all custom configuration from Oracle Application Server 10g to Oracle WebLogic Server 11g. All custom application server and SOA server configuration that is required for use by your SOA code should be migrated (manually) from Oracle Application Server 11g to Oracle WebLogic Server 11g.
  • 9. UPGRADING ORACLE SOA SUITE 10G TO 11G Raastech White Paper ๏ฎ 9 / 33 1. Custom data sources are configured in Oracle Application Server 10g via the EM console by navigating the following screens: Cluster Topology ๏ƒ  oc4j_soa ๏ƒ  Administration ๏ƒ  JDBC Resources Figure 2. Page displaying the list of data sources in Oracle Application Server 10g 2. In Oracle WebLogic Server 11g, navigate to the following page to create all custom data sources using the same names and settings: soa_domain ๏ƒ  Services ๏ƒ  Data Sources Figure 3. Page displaying the list of data sources in Oracle WebLogic Server 11g
  • 10. UPGRADING ORACLE SOA SUITE 10G TO 11G Raastech White Paper ๏ฎ 10 / 33 3. Navigate to the following screens to get a list of all Connection Factory in Oracle Application Server 10g via the EM console: Cluster Topology ๏ƒ  oc4j_soa ๏ƒ  Applications ๏ƒ  default ๏ƒ  (adapter) ๏ƒ  Connection Factories 4. Navigate to the following screens to create the equivalent Connection Factory in Oracle WebLogic Server 11g: soa_domain ๏ƒ  Deployments ๏ƒ  (Adapter) ๏ƒ  Configuration ๏ƒ  Outbound Connection Pools Create Partitions (as a substitute for BPEL Domains) BPEL domains in 10g are used to group BPEL processes. Each BPEL domain has its own configuration and logging, and is created by logging in to the BPEL Admin console at a url similar to the following: http://soasandbox.raastech.com:7777/BPELAdmin There is no concept of BPEL domains in Oracle SOA Suite 11g (technically, there is a single BPEL domain). Beginning with Oracle SOA Suite 11.1.1.3, the concept of a โ€œpartitionโ€ is introduced. Partitions, unlike BPEL domains, do not have their own configuration or logging. However, from a code grouping aspect, they can be treated identically to BPEL domains. For example, if you have a BPEL domain called โ€œAccountingโ€, simply create a partition called โ€œAccountingโ€. Figure 4. Creating and deleting โ€œpartitionsโ€ in SOA Suite 11g can be done by right-clicking on โ€˜soa-infraโ€™
  • 11. UPGRADING ORACLE SOA SUITE 10G TO 11G Raastech White Paper ๏ฎ 11 / 33 1. Create a โ€œpartitionโ€ in 11g with the same name for each BPEL domain in 10g. Create Partitions (as a substitute for ESB Services and Service Groups) Systems and Service Groups are used in ESB 10g to group ESB services. There is no concept of ESB Systems and Service Groups in Oracle SOA Suite 11g. Beginning with Oracle SOA Suite 11.1.1.3, the concept of a โ€œpartitionโ€ is introduced. Partitions, unlike ESB Systems and Service Groups, do not have listeners. However, from a code grouping aspect, they can be treated similarly to ESB Systems and Service Groups. However, Services Groups in ESB 10g can be cascading (i.e., a Service Group can have another Service Group). Thus cascading hierarchies will need to be flattened. For example, if you have a System called โ€œHRโ€ with two Service Groups โ€œEuropeโ€ and โ€œUnited Statesโ€, it will have to be flattened as shown. Also note that partition names cannot have spaces. Figure 5. ESB 10g System and Service Group (left) and Oracle Fusion Middleware 11g Partitions (right) 1. Create a โ€œpartitionโ€ in 11g with the same name for each ESB System and Service Group in 10g. a. Ensure that the hierarchy is flattened. b. Do not use spaces in partitions names. Migrate BPEL Domain Properties
  • 12. UPGRADING ORACLE SOA SUITE 10G TO 11G Raastech White Paper ๏ฎ 12 / 33 There is technically a single domain in Oracle SOA Suite 11g (versus potentially multiple domains in SOA Suite 10g), so properties will affect the entire server (affecting both BPEL and Mediator components). 1. Begin by getting a copy of all BPEL Process Manager 10g properties for all domains. This is located on the Oracle_Home of the BPEL Process Manager 10g: $ORACLE_HOME/bpel/domains/<domain>/config/domain.xml If you have multiple BPEL domains and different settings for the properties on each of those domains, you will have to decide which setting you want to use in 11g. 2. The properties should then be manually added to one of these 11g configuration files: $DOMAIN_HOME/config/soa-infra/configuration/bpel-config.xml $DOMAIN_HOME/config/<domain_name>/configuration/soa-infra-config.xml The table below shows properties that have changed between 10g and 11g. All other properties behave the same. 10g Property 11g Property dspInvokeAllocFactor No longer exists dspMaxThreads No longer exists processCheckSecs No longer exists txDatasourceJndi No longer exists uddiLocation oracle.soa.uddi.registry.inquiryUrl uddiPassword oracle.soa.uddi.registry.password uddiUsername oracle.soa.uddi.registry.username Table 1. BPEL properties that have changed from 10g to 11g For more information, check out chapter 10.2.6 Specifying Domain Descriptor Properties in Oracle BPEL Process Manager 11g at the following link: http://download.oracle.com/docs/cd/E17904_01/upgrade.1111/e10127/upgrade_bpel _apps.htm#CHDFDEDB Other Custom Configuration
  • 13. UPGRADING ORACLE SOA SUITE 10G TO 11G Raastech White Paper ๏ฎ 13 / 33 There may be other configuration that would need to be made on the new 11g environment, and this may include custom configuration from the Oracle HTTP Server, Oracle Database, operating system, etc. Ensure that any other custom configuration is applied to the new environment.
  • 14. UPGRADING ORACLE SOA SUITE 10G TO 11G Raastech White Paper ๏ฎ 14 / 33 4. DEVELOP THE DEPLOYMENT PROCESS Make sure that all Ant scripts are ready at this stage. This is not only needed when importing artifacts to the MDS (in Step 5), but will simplify and speed up your future deployments. Oracle SOA Suite 11g ships all Ant scripts needed, and theyโ€™re quite good. The most important targets needed for the upgrade project are highlighted in the table below. Description Ant Script Ant Target Compile composite ant-sca-package.xml package Deploy composite ant-sca-deploy.xml deploy Export MDS ant-sca-deploy.xml exportSharedData Import artifacts to MDS ant-sca-deploy.xml deploy Table 2. Key Ant targets needed for the upgrade Compile (Package) Composites This command demonstrates how to set the environment, change to the appropriate directory, and execute Ant to compile a โ€œHelloWorldโ€ composite project. This creates a deployable JAR file under the projectโ€™s ~/deploy subdirectory. This JAR file can be deployed via the Fusion Middleware console or through Ant. 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 Goal of Step 4 Prepare all Ant scripts, as it is required for Step 5. SOA Suite 11g provides great Ant script to ease the deployment process. This is required primarily for Step 5, but will also tremendously simplify your future deployments.
  • 15. UPGRADING ORACLE SOA SUITE 10G TO 11G Raastech White Paper ๏ฎ 15 / 33 ant -f ant-sca-package.xml package -DcompositeDir=/u01/HelloWorld -DcompositeName=HelloWorld -Drevision=1.0 Deploy Composites This command demonstrates how to execute Ant to deploy a โ€œHelloโ€ composite to the SOA server. The full path to the deployable JAR file must be specified. ant -f ant-sca-deploy.xml deploy -DserverURL=http://soadev:8001/soa-infra/deployer -Duser=weblogic -Dpassword=welcome1 -DsarLocation=/u01/HelloWorld/deploy/sca_HelloWorld_rev1.0.jar -Dpartition=default -Doverwrite=true -DforceDefault=true -Dconfigplan=/tmp/cfgplan.xml Export MDS This command demonstrates how to execute Ant to export the entire MDS to a JAR file. The JAR file can be unzipped and browsed through the file system. By manipulating the โ€œpatternโ€ parameter, it is possible to limit what you want to export. ant -f ant-sca-deploy.xml exportSharedData -DserverURL=http://soadev:8001/soa-infra/deployer -Duser=weblogic -Dpassword=welcome1 -DjarFile=/tmp/RaastechMetaData.jar -Dpattern=** Import Artifacts to MDS This command demonstrates how to zip a directory structure, and use Ant to import the contents to the MDS, maintaining the same folder structure. 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
  • 16. UPGRADING ORACLE SOA SUITE 10G TO 11G Raastech White Paper ๏ฎ 16 / 33 -DserverURL=http://soadev:8001/soa-infra/deployer -Duser=weblogic -Dpassword=welcome1 -Doverwrite=true -DsarLocation=/tmp/RaastechMetaData.jar For more information regarding the Ant build scripts shipped with Oracle SOA Suite 11g, refer to chapter 43.6.2 How to Manage SOA Composite Applications with ant Scripts: http://download.oracle.com/docs/cd/E12839_01/integration.1111/e10224/sca_lifecycl e.htm#sthref2497
  • 17. UPGRADING ORACLE SOA SUITE 10G TO 11G Raastech White Paper ๏ฎ 17 / 33 5. IMPORTS ARTIFACTS TO THE MDS In Oracle SOA Suite 10g, the majority of configuration were stored on the file system. This meant that any change to any configuration file must be made on all midtiers. Now, in Oracle SOA Suite 11g, these artifacts are stored centrally in the MDS. The MDS, or Meta Data Services, is a database-based repository and all artifacts are now centralized across all midtier servers. The content in the MDS is represented and navigated identically to a file system layout. Artifacts may include DVMs, schemas, WSDLs, and fault policies. Browsing the MDS The MDS can be browsed through any of the following ways: ๏‚ง Through a SOA-MDS connection in JDeveloper 11g ๏‚ง After exporting its contents through the Fusion Middleware console ๏‚ง After exporting its contents as a JAR file using Ant Goal of Step 5 Import all shared artifacts such as custom DVMs, schemas, WSDLs, and fault policies to the MDS prior to upgrading the SOA code. Oracle SOA Suite 11g has introduced the concept of a database-based repository, referred to as the MDS (Meta Data Services). All custom artifacts should be imported to the MDS prior to the code upgrade, as the code will need to be updated to reference them.
  • 18. UPGRADING ORACLE SOA SUITE 10G TO 11G Raastech White Paper ๏ฎ 18 / 33 Figure 6. MDS content can be browsed through JDeveloper 11g (left) or on the file system after exporting it (right) Prior to upgrading your code, ensure that all artifacts are imported to the MDS. Examples of these artifacts include DVMs, fault policies, schemas, WSDLs, etc. After importing these artifacts, the code will be updated to reference these now MDS-based artifacts (described later). Migrating Shared Domain Value Maps (DVMs) Although there are numerous ways to migrate DVMs from Oracle SOA Suite 10g to 11g, the approach here is one of the quicker and simpler ways. 1. In Windows XP: a. Double-click on โ€œMy Network Placesโ€ b. Double-click on โ€œAdd Network Placeโ€ c. Navigate through the screens, and provide the URL to your ESB slide as shown in Figure 7.
  • 19. UPGRADING ORACLE SOA SUITE 10G TO 11G Raastech White Paper ๏ฎ 19 / 33 Figure 7. Creating a Windows Network Place to access DVMs in the ESB slide 2. The contents of the ESB slide are now accessible via Windows Explorer, as shown in Figure 8. Figure 8. Accessing the ESB slide from Windows Explorer 3. Download the DVMs and copy them to your local file system.
  • 20. UPGRADING ORACLE SOA SUITE 10G TO 11G Raastech White Paper ๏ฎ 20 / 33 4. Copy the DVMs to a unix-based operating system. 5. Run the following command to rename all file extension from .xml to .dvm: rename .xml .dvm *.xml 6. Perform a global search-and-replace to change the <dvm> attribute (this is a linux based command): find . -type f -exec sed -i "s%isNew="true"%xmlns="http://xmlns.oracle.com/dvm" %" {} ; This replaces an attribute in the DVM to convert it to the 11g compatible version. For example: 10g: <dvm name="Country_Code" isNew="true"> 11g: <dvm name="Country_Code" xmlns="http://xmlns.oracle.com/dvm"> 7. Create a folder on the local file system, and copy the DVMs to this location: c:appsCustomMetaDatadvm 8. Zip up the contents of this folder (from the top level c:apps) and use Ant to import it to the MDS. This would be imported to the MDS under the following location: oramds:/apps/CustomMetaData/dvm Migrate BPEL Fault Policies It is possible to maintain multiple fault policies in Oracle SOA Suite 11g. This section describes, at a high-level, how to migrate a single, custom fault policy from 10g to 11g. 1. Identify all BPEL Process Manager 10g domains that have fault policies. For example, the default domain will have its own fault policy that may have been customized. The two relevant files are located here: $ORACLE_HOME/bpel/domains/default/config/fault-bindings.xml $ORACLE_HOME/bpel/domains/default/config/fault-policies/DefaultPolicy.xml
  • 21. UPGRADING ORACLE SOA SUITE 10G TO 11G Raastech White Paper ๏ฎ 21 / 33 2. Change the version in fault-bindings.xml from โ€œ2.0.1โ€ to โ€œ3.0โ€ and change the <process> element to <composite>, as highlighted in red below: <?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> 3. Rename the 10g fault policy file to fault-policies.xml, change the version from โ€œ2.0.1โ€ to โ€œ3.0โ€, and add a higher level <faultPolicies> node. For example, the text in red is new: <?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"> . . . </faultPolicy> </faultPolicies> 4. Create a folder on the local file system, and copy both files to this location: c:appsCustomMetaDatafaultPolicies 5. Zip up the contents of this folder (from the top level c:apps) and use Ant to import it to the MDS. This would be imported to the MDS under the following location: oramds:/apps/CustomMetaData/faultPolicies
  • 22. UPGRADING ORACLE SOA SUITE 10G TO 11G Raastech White Paper ๏ฎ 22 / 33 Import Shared Schemas and WSDLs If you have shared schemas and/or WSDLs, import them to the MDS, maintaining the same directory structure. If you have imports that are fully qualified references, they must be changed to local references accordingly. Let's say you have 2 schemas on your shared server in the following location: http://server:7777/Account/Account.xsd http://server:7777/Custom/CustomAccount.xsd And letโ€™s say that Account.xsd imports the CustomAccount.xsd schema as an HTTP reference as follows: <schema import="http://server:7777/Custom/CustomAccount.xsd"> This reference in Account.xsd will need to be changed to a local reference, as: <schema import="../Custom/CustomAccount.xsd"> Now both these schemas should be copied to your local file system, in preparation for import to the MDS: c:antCustomMetaDataxsdAccountAccount.xsd c:antCustomMetaDataxsdCustomCustomAccount.xsd Finally, zip up the contents of this folder and use Ant to import it to the MDS. This would be imported to the MDS under the following location: oramds:/apps/CustomMetaData/xsd/Account/Account.xsd oramds:/apps/CustomMetaData/xsd/Custom/CustomAccount.xsd
  • 23. UPGRADING ORACLE SOA SUITE 10G TO 11G Raastech White Paper ๏ฎ 23 / 33 6. UPGRADE THE PROJECTS To upgrade BPEL and ESB projects developed originally in JDeveloper 10g to 11g involves going through pre-upgrade steps, migration of the project, and post-upgrade steps. This will migrate the project to an 11g composite that will consist of a single BPEL or Mediator component. inconsistent Upgrade BPEL Projects 1. Ensure that projects are migrated in order of dependency. For example, if HelloWorld1 invokes HelloWorld2, then HelloWorld2 must be upgraded and deployed to the Oracle SOA Suite 11g server prior to upgrading HelloWorld1. 2. Open the BPEL project in JDeveloper 10g. 3. Modify partner link endpoints to point to the 11g service. For example, HelloWorld1 is currently pointing to HelloWorld2 deployed to the old SOA Suite 10g server, referencing it as follows: http://soa10g:7777/orabpel/default/HelloWorld2/HelloWorld2?wsdl Now that HelloWorld2 is upgraded and deployed to the new SOA Suite 11g server, modify the partner link in HelloWorld1 to point to the newly upgraded HelloWorld2: http://soa11g:8001/soa_infra/services/default/HelloWorld2/He lloWorld2_ep.wsdl * Always use abstract WSDLs when referencing composites. 4. Save the project in JDeveloper 10g. Goal of Step 6 Upgrade your SOA projects from the 10g version to the 11g version. Oracle JDeveloper 11g provides a (somewhat unreliable) Migration Wizard that will automatically upgrade your SOA code from 10g to 11g. Prior to doing this, some pre-upgrade steps are required and performed on JDeveloper 10g first.
  • 24. UPGRADING ORACLE SOA SUITE 10G TO 11G Raastech White Paper ๏ฎ 24 / 33 5. Open the project in JDeveloper 11g. 6. Navigate through the Migration Wizard. If an error occurs, the Migration Wizard does not give a specific reason for the failure of the migration. In that case, check the logs at (or appropriate directory): c:OracleMiddlewarejdeveloperupgradelogs*.* Upgrade ESB Projects 1. Ensure that projects are migrated in order of dependency. For example, if HelloWorld1 invokes HelloWorld2, then HelloWorld2 must be upgraded and deployed to the SOA Suite 11g server prior to upgrading HelloWorld1. 2. Open the ESB project in JDeveloper 10g. 3. Modify partner link endpoints to point to the 11g service. For example, HelloWorld1 is currently pointing to HelloWorld2 deployed to the old SOA Suite 10g server, referencing it as follows: http://soa10g:7777/esb/wsil/DefaultSystem/HelloWorld2?wsdl Now that HelloWorld2 is upgraded and deployed to the new SOA Suite 11g server, modify the partner link in HelloWorld1 to point to the newly upgraded HelloWorld2: http://soa11g:8001/soa_infra/services/default/HelloWorld2/He lloWorld2_ep.wsdl * Always use abstract WSDLs when referencing composites.
  • 25. UPGRADING ORACLE SOA SUITE 10G TO 11G Raastech White Paper ๏ฎ 25 / 33 4. If the routing rule does not have a SOAP service as the target, then manually add one (instead of referencing the ESB endpoint from the server). 5. Ensure that the โ€œInvocable from an external web serviceโ€ is selected for all ESB routing services. 6. Save the project in JDeveloper 10g. 7. Open all .esbsvc files in a text editor. a. Delete all โ€œparentโ€ lines that have lines similar to the following: <parent guid="96DD76C0971311DABF1A87858E4395A7" qname="DefaultSystem" type="system"/> b. Change all remaining โ€œqnameโ€ references and remove the system and service groups as follows: OLD: qname="DefaultSystem.Accounting.HelloWorld" NEW: qname="HelloWorld" 8. Open the project in JDeveloper 11g. 9. Navigate through the Migration Wizard. If an error occurs, the Migration Wizard does not give a specific reason for the failure of the migration.
  • 26. UPGRADING ORACLE SOA SUITE 10G TO 11G Raastech White Paper ๏ฎ 26 / 33 In that case, check the logs at (or appropriate directory): c:OracleMiddlewarejdeveloperupgradelogs*.*
  • 27. UPGRADING ORACLE SOA SUITE 10G TO 11G Raastech White Paper ๏ฎ 27 / 33 7. POST-UPGRADE STEPS After the code has been successfully upgraded to 11g, based on the complexity of the project and features used, several post-upgrade steps may need to be performed. Be cognizant of the fact that it is impossible to exhaustively cover every post-upgrade steps required for your code. This step also focuses on areas not directly addressed in Oracle documentation, but the Oracle Fusion Middleware Upgrade Guide for Oracle SOA Suite, WebCenter, and ADF 11g Release 1 (11.1.1) must also be followed to address other documented post-upgrade steps. Modify DVM Lookups Every DVM lookup must be manually modified. 1. Open all files in the project (e.g., .xsl) and locate any DVM lookup functions. 2. Manually modify the DVM function name and the location of the DVM as described. For example, the 10g function may look as follows: orcl:lookup-dvm ("Currency", "Country", "US", "Currency", "USD") Both the DVM lookup function and the path to the DVM should be changed: dvm:lookupValue ("oramds:/apps/CustomMetaData/dvm/Currency.dvm", "Country", "US", "Currency", "USD") Modify Schema Imports Every schema import should be manually modified to use ORAMDS references instead of HTTP references. By doing this, not only does it improve performance, but there is no more hardcoding of hostnames and ports. Goal of Step 7 Perform all post-upgrade steps to your BPEL and Mediator code. Perhaps the most time-consuming step of the entire process, perform all post-upgrade steps, most of which have to be done manually.
  • 28. UPGRADING ORACLE SOA SUITE 10G TO 11G Raastech White Paper ๏ฎ 28 / 33 Schemas local to the project do not have to be updated. 1. Open all schemas and WSDLs in the project and locate any import or location statements (except for local schemas, which remain unchanged). 2. Convert the HTTP reference to an ORAMDS reference. For example, the 10g import may look as follows: <schema import="http://soa10g:7777/CustomMetaData/xsd/Account.xsd"> The import would be changed as follows: <schema import="oramds:/apps/CustomMetaData/xsd/Account.xsd"> Add Fault Policies and Bindings Unlike 10g, there is no concept of a global fault policy in Oracle SOA Suite 11g that will automatically apply to all deployed composites. Therefore, you must manually reference the fault policy and fault binding in composite.xml. 1. Edit composite.xml 2. Add the following immediately below the </service> tag to reference your custom fault policy: <property name="oracle.composite.faultPolicyFile"> oramds:/apps/CustomMetaData/faultPolicies/fault-policy.xml </property> <property name="oracle.composite.faultBindingFile"> oramds:/apps/CustomMetaData/faultPolicies/fault-bindings.xml </property> If you have more than one fault policy, you will have to decide which one you want your composite to reference. Migrate bpel.xml Properties Any custom properties in bpel.xml (10g) will have to be manually added to composite.xml (11g). 1. Open the 10g bpel.xml file, and locate any custom properties. For example:
  • 29. UPGRADING ORACLE SOA SUITE 10G TO 11G Raastech White Paper ๏ฎ 29 / 33 <property name="retryInterval">60</property> 2. Open the 11g composite.xml file, and add the 11g version of the property: <property name="jca.retry.interval">60</property> The table below lists some 10g and 11g properties: 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> Table 3. BPEL properties in 10g and their equivalent 11g version Modify BPEL Sensors Connection Factory References If using BPEL sensors, the connection factory has changed in Oracle SOA Suite 11g. 1. In JDeveloper 11g, choose the โ€œMonitorโ€ button to edit sensor detail: 2. Click on BPEL Sensor Action: 3. Modify the JMS Connection Factory and set it to โ€œweblogic.jms.ConnectionFactoryโ€: Publish Type: JMS Queue JMS Connection Factory: weblogic.jms.ConnectionFactory
  • 30. UPGRADING ORACLE SOA SUITE 10G TO 11G Raastech White Paper ๏ฎ 30 / 33 Publish Target: jms/MyQueue Review Mediator Filters The JDeveloper 11g Migration Wizard does not work properly in some cases. For example, when ESB filters are migrated, brackets are missing which changes the meaning of the filter if a combination of logical operators are used (e.g., AND, OR). In other cases, dollar ($) signs are missing which results in incorrect XPaths. 1. Open the ESB project in JDeveloper 10g. 2. Review the filter. 3. Open the migrated Mediator project in JDeveloper 11g. 4. Review the filter. 5. Compare both filters and ensure that it is migrated properly. Review and Modify Header Functions Some ESB XPath header functions are made obsolete in 11g and replaced with alternate Mediator XPath functions. See Table 4 below. ESB XPath Function (obsolete) Mediator XPath Function ehdr:setOutboundHeader mhdr:setProperty ehdr:getRequestHeader mhdr:getProperty Table 4. Obsoleted ESB XPath functions and their equivalent 11g versions These functions impact areas such as header manipulation and dynamic routing. For example, dynamic routing requires setting the outbound header via the ehdr:setOutboundHeader function as follows: select="ehdr:setOutboundHeader('/shdr:ESBHeader/shdr:location', $LocationIn, 'shdr=http://xmlns.oracle.com/esb;')" In 11g, the equivalent would be: select="mhdr:setProperty('out.property.endpointURI',$LocationIn)"
  • 31. UPGRADING ORACLE SOA SUITE 10G TO 11G Raastech White Paper ๏ฎ 31 / 33 Header functions are one of the more problematic areas of the migration. In some cases, such as setting usernames and passwords in the header, these will flat out not work and those functions must be moved to the new โ€œAssign Valuesโ€ feature in Mediator 11g. 1. Checked and modify each header functions manually. 2. Review both Oracle and online documentation to research how to migrate header functions. 3. Test each case individually to ensure that the new header function operates identically to the 10g version of the code. Review Usage of getDomainId() Some BPEL XPath functions change in behavior as well, and can only be discovered during runtime (i.e., testing). The BPEL XPath function getDomainId() behaves differently, since there is no longer the concept of BPEL domains. The function now returns NULL. 1. Find all code that is using the getDomainId() function. 2. Consider using an alternate function or modifying your code. Other Stuff The Oracle Fusion Middleware Upgrade Guide for Oracle SOA Suite, WebCenter, and ADF 11g Release 1 (11.1.1) has an enormous number of additional steps that may apply to your code. ๏‚ง Review the Oracle Fusion Middleware Upgrade Guide for Oracle SOA Suite, WebCenter, and ADF 11g Release 1 (11.1.1) at this location and follow all recommended upgrade steps not covered in this white paper: http://download.oracle.com/docs/cd/E17904_01/upgrade.1111/e10127/toc.htm
  • 32. UPGRADING ORACLE SOA SUITE 10G TO 11G Raastech White Paper ๏ฎ 32 / 33 8. TEST Compilation errors will reveal a lot. Deployment errors will also reveal a lot. Validation of the newly upgrade code is actually quite easy. As discussed earlier, both SOA Suite 10g and 11g infrastructures should remain available during the upgrade period. Use client tools to test such as SoapUI or the consoles (e.g., BPEL Console 10g, Oracle Fusion Middleware 11g Console). Testing is straightforward: ๏‚ง Test payload on your service deployed to SOA Suite 10g ๏‚ง Test payload on your service deployed to SOA Suite 11g ๏‚ง Compare results; they should be identical Goal of Step 8 Compile, deploy, and test every project. Since the underlying code has largely changed, dedicate time to exhaustive unit and end-to-end testing. Fortunately, identifying and resolving issues uncovered through the compilation and deployment of the JDeveloper 11g SOA projects addresses many of the coding issues, but it is not enough, as there many coding issues that will only be discovered at runtime.
  • 33. UPGRADING ORACLE SOA SUITE 10G TO 11G Raastech White Paper ๏ฎ 33 / 33 FINAL THOUGHTS The 8-step upgrade approache developed by Raastech is an excellent starting point and has aided in ensuring the success of SOA Suite 10g to 11g upgrade projects. Nonetheless, neither our proposed approach nor this white paper are meant to replace the Oracle documentation, which should also be relied on. Rather, this white paper should be used to augment Oracleโ€™s existing documentation. Expect to touch nearly 100% of your code and expect to encounter issues no one else has. The reason we recommend our approach is because it provides certain areas which we believe should be completed before actually upgrading your code, and in specific, these are: ๏‚ง Develop the deployment process early on. This is needed for the next step. โ€˜Nuff said. ๏‚ง Import all artifacts to the MDS. If you donโ€™t import your DVMs, fault policies, and shared schemas to the MDS, it will become a back-and-forth game between the developers (who will constantly complain of missing artifacts in the MDS) and the application administrators. About Raastech: Raastech is a fast growing company with diversified disciplines but specializing in information technology development and systems integration. We employ some of the top industry experts to help us achieve our mission. Founded in 2009, Raastech provides management consulting, systems development and integration, and managed services 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: Upgrading Oracle SOA Suite 10g to 11g April 2011 Raastech Headquarters: 2201 Cooperative Way, Suite 600 Herndon, VA 20171 www.raastech.com Copyright ยฉ 2011 Raastech, Inc. All rights reserved.