View Single Post
 
Old August 11th, 2005, 02:49 PM
davidb davidb is offline
Registered User
 
Join Date: Aug 2005
Location: , , .
Posts: 1
Thanks: 0
Thanked 0 Times in 0 Posts
Default User-defined type as input for store procedures

Is it possible to call stored procedures that take Oracle user-defined types (STRUCTS and ARRAYS) as input parameters in Spring (as stated on p.210-211, "Passing in a Complex Type as a Parameter")? The connection wrappers returned by the data sources I have tried cause class cast exception in:

oracle.sql.StructDescriptor.createDescriptor()

This seems to be a problem even when you aren't using the Spring framework. If, using JDBC, I get the connection directly from the DriverManager (java.sql.DriverManager.getConnection()), I can call a store procedure that takes UDTs as input. If I take the same code and change it to get the connection from, say, a WebLogic connection pool I get a similar classcast exception with its source in StructDescriptor.

It looks like it is possible to point a Spring app at an unpooled connection. That might solve the problem but, as the authors point out, that is not really an option for a production environment.

David B