How to override JDBC Driver

Gurus :
We are planning to upgraded Oracle 10g driver on our webMethods IS. But we have some integration that connects to Oracle 7.x version. 10g driver doesnot supports 7.x versions.

We thought of overriding the JDBC Driver at the package level. Tried implementing the jar file inside the <package_name>\code\JAR folder on the JDBC Connection package. But ran in to an error “ORA-01010: invalid OCI operation”

Connection Properties :

Transaction Type LOCAL_TRANSACTION
DataSource Class : oracle.jdbc.pool.OracleDataSource
serverName
user
password
Retype password
databaseName
portNumber
networkProtocol
Other properties : driverType=thin

I was wondering, its possible to do like that. Appreciate help !!

Thanks in Advance.

Hi,

the 10g Drivers will work with Databases from 8i (8.1.7+) to 10g.
Officially supported is a range from 9i R2 to 10g.

You should consider upgrading the Oracle 7.x Databases.

Overriding such things is not a very good idea.

Regards,
Holger

Thanks Holger for your suggestions.

We have a plan to upgrade 7.x database. Its an ongoing long-term project.

As a temporary solution to this issue, Is there by anyway we can accomplish this task.

  1. Override the JDBC Adapter or
  2. Flat File Methods. Through SQL Loader or something pull the data from Oracle 7.x, Convert to flat file and place them in FTP Server. webMethods integration instead of connection to 7.x DB get the flat file and process.

Any idea or suggestions, always welcome.

Thanks,
Sesh.

There are two ways to fix it without upgrading oracle.
A) Set up a seperate IS with older version of JDBC driver. (This will be an unsupported instance from webMethods point of view)

B) Buy a third Party driver from datadirect…


Considering that Oracle 7 is itself an unsupported version, why would the client want to run an app on it? It may actually be easy for the client to migrate the app (unless it is propriory code - which can work only on oracle 7) to a better version of Oracle or a different database alltogether - Say MySQL.

Doing anything with SQL Loader, FTP along with webMethods etc will be an IT Support nightmare. It will at the end lead to higher TCO (unless the c-suite guys at your end do not understand it). Appears that they are more concerned about ROI then TCO.

Thanks for the reply.

Its not like that. Business is not concerned about the ROI. Mgmt will look on the both side. Legacy application already ran for a while and they had taken initiative to migrate the legacy applications.

For the time being would like to continue the running process till the project completion. The duration will be more than a year or so.

On the other hand on webMethods environment, we are using a shared server and we are lacking them behind being upgraded to 10g version. Till such time business want to support their apps and interfaces.

Thats is the reason, we are looking for an alternative solution to support the legacy system. Just to support 5 to 10 interfaces, we can not ask for the seperate IS environment and also to support that.

I think then you want to check DataDirect’s or iWay’s Oracle Driver (if it is compatible with Oracle 7.0) and use those (I would doubt if anyone would want to support Oracle 7 now when Oracle itself does not support it) to make connection to Oracle 7 DB.

I have often heard such argument from Businesses such as “Just for this time”, “short term solution”, “The application is going to be decommisioned in near future”, but it is like a popcorn machine, everytime something happens, they would want to run it for some more time.

Is the OS used for running Oracle 7 still supported?

To answer to your question the Operating System that IS is running row supports the Driver.

You mean to say that third party driver from DataDirect or so… would be compatible / or mix of Oracle 10g and 9i. driver(s).

BTW, My question here is 10g driver is going to be implemented on IS and we have 9i driver that I want to implement in package level i.e. Overriding the 10g Driver that is installed on the IS. Doable?

Thank you.

So finally what was the solution selected for this problem?