Showing posts with label SOA Migration. Show all posts
Showing posts with label SOA Migration. Show all posts

Saturday, October 22, 2011

Oracle SOA Suite 10g to 11g Migration - Part3 - Things to consider post migration of the code.

Oracle SOA Suite 10g to 11g Migration - Part3  - Things to consider post migration of the code:

We have to consider the below points post migration of the code.

ValidateXML property:


During the migration,the property validateXML did not migrated by default to SOA 11g.The property needs to be added manually to the required partner links .

The below steps need to be followed to add the validateXML property(Enable the schema validation).

1.Open the .bpel file corresponding to the Composites that require the schema validation.

2. Double click the partnerlink that requires the schema validation for the request payload and select the property tab .

3.Add the validateXML property with the value true.


The added property will be available in the Composite.xml file as shown below.




DVM Issues:


1. Duplicate Rows:

In 10g, if the value in the source column is duplicated then the lookup function will return the last row for that key but in 11g the lookup will fail with the exception.



If we are looking for the value corresponding to the column “SiebelValue” by passing the “EAIVAlue” as “New”, in 10g the lookup function will return the result as “Awaiting Approval” but in 11g exception will be thrown for duplicate values.
To resolve this issue remove the duplicate rows from the DVM.

2. Invalid Column:

In 10g, if we are looking for a DVM column value that is not available in the DVM the lookup function will return the default value specified in the lookup function but in 11g the exception will be thrown for invalid column.



If the column “CANONICAL” is not available in DVM, in 10g the lookup function will return the default value (empty string) specified in the function but in 11g the exception will be thrown from the lookup function.
To resolve this issue make sure the columns specified in the lookup functions are valid.

Oracle SOA Suite 10g to 11g Migration - Part2 - Resolving the deployment issues with the migrated composites.

Oracle SOA Suite 10g to 11g Migration - Part2 - Resolving the deployment issues with the migrated composites:

The below are the some of the issues we have faced during the deployment of the migrated code with the solution what we have provided to resolve the issue.

Base64 encoding/decoding class issue

BPEL compilation might fail if we have used com.collaxa.common.util.Base64Decoder/Base64Encoder classes in 10g.The import of com.collaxa.common.util.Base64Decoder/Base64Encoder class should be changed to oracle.soa.common.util.Base64Decoder/Base64Encoder

Recursive Import issue

The deployment of the migrated composite might fail if the composite invokes the partner WSDL that is having the duplicate import of same WSDL with the following error “WSDL contains recursive import loop”.




To overcome this one of the import should be commented or removed.

RuntimeFault.wsdl and ws-addressing.xsd cannot found

The http://xxxxx:xxxx/orabpel/xmllib/RuntimeFault.wsdl and
http://xxxxx:xxxx/orabpel/xmllib/ws-addressing.xsd could not be found after migration.
In 11g these files are moved to MDS .change the location manually to the following MDS location in the code oramds:/soa/shared/bpel/RuntimeFault.wsdl and oramds:/soa/shared/common/ ws-addressing.xsd




Oracle SOA Suite 10g to 11g Migration - Part1 - Things to consider before starting the migration of the code.


Oracle SOA Suite 10g to 11g Migration - Part1 - Things to consider before starting the migration of the code:

We have to consider the below points before starting the migration of the code.

Move all the Common artifacts (XSD, WSDL, DVM and XREF) to MDS:

Before starting the code migrations move all the common artifacts to MDS with the folder structure that requires for the project.

Partner link Location in bpel.xml:

If the Runtime WSDL’s are used for partner link invocation in 10g,make sure all the partner link URL’s(host name and port) in bpel.xml are reachable else change with reachable endpoints by using ant script or manually.

Common XSD and WSDL References:

Make sure the common XSD’s and WSDL files referred in the 10g projects are reachable else change the location of the URL (host name and port) with reachable by using ant script or manually.

The below sample Ant script can be used to change the host name and port in XSD, WSDL and XML files.

<?xml version="1.0" encoding="iso-8859-1"?>
<project name="HostnameReplace">
<replace dir="${basedir}" token="eaidev1:7777" value="${hostname}:${http.port}">
<include name="**/*.xsd"/>
<include name="**/*.wsdl"/>
<include name="**/*.xml"/>
</replace>

<replace dir="${basedir}" token="10.15.35.22:8888" value="${hostname}:${http.port}">
<include name="**/*.xsd"/>
<include name="**/*.wsdl"/>
<include name="**/*.xml"/>
</replace>
</project>

BPEL preferences:

SOA 11g does not accept spaces in preference name and the migration might fail with the following error preference.BPEL Process Name' does not match pattern for xs:NCName,if 10g has the preference name with empty spaces in between , so that they should be trimmed for empty spaces in bpel.xml and *.bpel.


Space in Schema Name:

The migration might fail if the 10g schema has a space in the name, the space should be trimmed in the name and also the places wherever the schema name has reference.