Major Differences between 8.1 and 10gR3

interestsauceInternet and Web Development

Oct 31, 2013 (4 years and 8 months ago)


As a matter of work I have had this interesting opportunity to work on the migration of some ALDSP 2.5
projects to Oracle 10gR3 ones. It was painful at first since I had a lot of java code written inside my DSP

Here I would talk about my
complete experience:

Major Differences between 8.1 and 10gR3

DSP Project as we have in 8.1 becomes 2 Artifacts in 10gR3

DSP Project Archive

DSP has improved web services but not much control on the WSDL (i.e. Web Service
Annotations cannot be used).

DSP generated Web Services with a .ws extension

DSP Project archive deployed using odsi console

Ear file containing the Web Services


WebLogic web service project


WebLogic Schema Project

Upgrade Basics

Out of The Box Upgrade does not work

You have to

do 2 upgrades, one with the DSP Project and One with your Web Services

For some reason, we cannot upgrade both at the same time

You have to copy Schemas as a folder inside DSP Project to resolve all references in the DSP





AccountsSchemas is a folder inside DSP Project

DSP Project does not have a mechanism for creating java files.

All java files have to be compiled into a jar and placed under DSP
INF/lib folder

DSP becomes more like ALSB following the Aqualogic family

No direct programming control (except for custom libraries through DSP

done using XQuery
. There is also XQSE which is a scripting Extension to
XQuery. This allows us to wri
te complex functions and procedures. One interesting fact
is that we can convert all the complex java logic to xqse functions/procedures as it has
support for do/while, try/catch etc.

DSP Project Upgrade

After Auto upgrade is complete, copy the schemas
folder under the DSP Project

Most of the DSP compile errors will be resolved by this.

Create .ws Web Service Map for all data services that we are exposing externally

We will not use data controls in the Web Service projects instead we will use web serv
controls generated by the web service map.

DSP team expects the .ws to be consumed by the Front End directly and does not expect us
to proxy with another service layer.

Where we have some logic built into our jws, we cannot avoid web services layer.

In addition, there are reasons to avoid the web service generated by DSP directly to avoid
exposing SDO to the front end (in case of update).

Delete sdo.xsdconfig from the schemas folder

Use a common Fix End Point utility to route the WS back to the sam
e server

NoNamespace Causes issues generating webservices from DS

All Schemas should have a namespace defined

If some schemas do not have a namespace, DSP will not generate a valid WSDL file and it
cannot be consumed by a client.

Some Tips for successful

Remove the inline WSDL Definfition in jws

Use the WSDL and generate the types in projects that have only read functions

Using the WSDL to generate types allows you not to deal with DSP SDO Objects

DSP Controls generate SDO Objects. Hence do not

use DSP/ODSI Controls in your web
service project.

SDO Object types are different from the XMLBean Types

Major difference between 8.1 and 9.2

It is not very simple to convert SDO Objects to XMLBeans and vice versa

Please use WSDL generated from .ws funct
ions for all read services

The WSDL has a wrapper object and a types jar will be generated for each wsdl that
you import.

Please make sure your DSP WSDL’s are updated any time you change the schema that
the WSDL is dependent on.

CRUD Operations

Replaces the submit with create, update and delete operations on each DSP. Can
be easily generated.

WSDL from .ws can be used for Create and Delete

For update, the WSDL generated from .ws file does not validate!

Cannot have two schemas in the same same n
amespace in the WSDL!

For Update, use the mediator client jar file

Mediator client uses SDO Objects and the update function requires a read and set for
setting the correct objects for update.

Creating create, delete and update functions for a ds


client jar

Web Service Control from WSDL for Read Service

Some DB2 Tips

Please use for creating DB2 connections to create or update Physical DS

However, you need to create DB2 alias to use this driver in 10gR3