PQ78067: WSCallHelper permit list needs Oracle methods added

 Fixes are available

5.1.1.17: WebSphere Application Server V5.1.1 Cumulative Fix 17 for AIX
5.1.1.17: WebSphere Application Server V5.1.1 Cumulative Fix 17 for HP-UX
5.1.1.19: WebSphere Application Server V5.1.1 Cumulative Fix 19 for Linux
5.1.1.16: WebSphere Application Server V5.1.1 Cumulative Fix 16 for AIX
5.1.1.18: WebSphere Application Server V5.1.1 Cumulative Fix 18 for AIX
5.1.1.18: WebSphere Application Server V5.1.1 Cumulative Fix 18 for HP-UX
5.1.1.18: WebSphere Application Server V5.1.1 Cumulative Fix 18 for Solaris
5.1.1.18: WebSphere Application Server V5.1.1 Cumulative Fix 18 for Windows
5.1.1.18: WebSphere Application Server V5.1.1 Cumulative Fix 18 for Linux
5.1.1.17: WebSphere Application Server V5.1.1 Cumulative Fix 17 for Linux
5.1.1.17: WebSphere Application Server V5.1.1 Cumulative Fix 17 for Solaris
5.1.1.17: WebSphere Application Server V5.1.1 Cumulative Fix 17 for Windows
5.0.2.7: WebSphere Application Server Express 5.0.2 Cumulative Fix 7
5.1.0.5: WebSphere Application Server V5.1.0 Cumulative Fix 5
5.0.2.17: WebSphere Application Server 5.0.2 Cumulative Fix 17 for Solaris
5.0.2.17: WebSphere Application Server 5.0.2 Cumulative Fix 17 for Windows
5.0.2.14: WebSphere Application Server 5.0.2 Cumulative Fix 14 for Solaris
5.1.1.10: WebSphere Application Server V5.1.1 Cumulative Fix 10 for Windows
5.1.1.10: WebSphere Application Server V5.1.1 Cumulative Fix 10 for AIX
5.0.2.14: WebSphere Application Server 5.0.2 Cumulative Fix 14 for Linux
5.1.1.19: WebSphere Application Server V5.1.1 Cumulative Fix 19 for AIX
5.1.1.19: WebSphere Application Server V5.1.1 Cumulative Fix 19 for Windows
5.1.1.9: WebSphere Application Server V5.1.1 Cumulative Fix 9 for Solaris
5.0.2.15: WebSphere Application Server 5.0.2 Cumulative Fix 15 for Windows
5.0.2.15: WebSphere Application Server 5.0.2 Cumulative Fix 15 for Solaris
5.0.2.15: WebSphere Application Server 5.0.2 Cumulative Fix 15 for AIX
5.1.1.9: WebSphere Application Server V5.1.1 Cumulative Fix 9 for AIX
5.0.2.15: WebSphere Application Server 5.0.2 Cumulative Fix 15 for Linux
5.0.2.12: WebSphere Application Server 5.0.2 Cumulative Fix 12
5.0.2.14: WebSphere Application Server 5.0.2 Cumulative Fix 14 for HP-UX
5.0.2.14: WebSphere Application Server 5.0.2 Cumulative Fix 14 for AIX
5.1.1.9: WebSphere Application Server V5.1.1 Cumulative Fix 9 for Windows
5.0.2.17: WebSphere Application Server 5.0.2 Cumulative Fix 17 for HP-UX
5.0.2.17: WebSphere Application Server 5.0.2 Cumulative Fix 17 for AIX
5.1.1.11: WebSphere Application Server V5.1.1 Cumulative Fix 11 for AIX
5.0.2.17: WebSphere Application Server 5.0.2 Cumulative Fix 17 for Linux
5.1.1.10: WebSphere Application Server V5.1.1 Cumulative Fix 10 for HP-UX
5.1.1.10: WebSphere Application Server V5.1.1 Cumulative Fix 10 for Linux
5.1.1.9: WebSphere Application Server V5.1.1 Cumulative Fix 9 for HP-UX
5.1.1.9: WebSphere Application Server V5.1.1 Cumulative Fix 9 for Linux
5.0.2.16: WebSphere Application Server 5.0.2 Cumulative Fix 16 for HP-UX
5.1.1.12: WebSphere Application Server V5.1.1 Cumulative Fix 12 for Windows
5.0.2.16: WebSphere Application Server 5.0.2 Cumulative Fix 16 for Solaris
5.0.2.8: WebSphere Application Server V5.0.2 Cumulative Fix 8
5.0.2.16: WebSphere Application Server 5.0.2 Cumulative Fix 16 for Windows
5.0.2.16: WebSphere Application Server 5.0.2 Cumulative Fix 16 for AIX
5.1.1.11: WebSphere Application Server V5.1.1 Cumulative Fix 11 for Windows
5.1.1.16: WebSphere Application Server V5.1.1 Cumulative Fix 16 for Solaris
5.0.2.18: WebSphere Application Server 5.0.2 Cumulative Fix 18 for Solaris
5.1.1.11: WebSphere Application Server V5.1.1 Cumulative Fix 11 for Linux
5.0.2.18: WebSphere Application Server 5.0.2 Cumulative Fix 18 for Windows
5.0.2.18: WebSphere Application Server 5.0.2 Cumulative Fix 18 for HP-UX
5.0.2.18: WebSphere Application Server 5.0.2 Cumulative Fix 18 for AIX
5.1.1.16: WebSphere Application Server V5.1.1 Cumulative Fix 16 for Windows
5.1.1.14: WebSphere Application Server V5.1.1 Cumulative Fix 14 for Solaris
5.0.2.14: WebSphere Application Server 5.0.2 Cumulative Fix 14 for Windows
5.1.1.12: WebSphere Application Server V5.1.1 Cumulative Fix 12 for AIX
5.1.1.12: WebSphere Application Server V5.1.1 Cumulative Fix 12 for Linux
5.1.1.12: WebSphere Application Server V5.1.1 Cumulative Fix 12 for HP-UX
5.1.1.12: WebSphere Application Server V5.1.1 Cumulative Fix 12 for Solaris
5.1.1.11: WebSphere Application Server V5.1.1 Cumulative Fix 11 for Solaris
5.1.1.13: WebSphere Application Server V5.1.1 Cumulative Fix 13 for AIX
5.1.1.13: WebSphere Application Server V5.1.1 Cumulative Fix 13 for Windows
5.0.2.13: WebSphere Application Server 5.0.2 Cumulative Fix 13
5.1.1.13: WebSphere Application Server V5.1.1 Cumulative Fix 13 for HP-UX
5.1.1.15: WebSphere Application Server V5.1.1 Cumulative Fix 15 for Solaris
5.1.1.13: WebSphere Application Server V5.1.1 Cumulative Fix 13 for Solaris
5.1.1.13: WebSphere Application Server V5.1.1 Cumulative Fix 13 for Linux
5.1.1.14: WebSphere Application Server V5.1.1 Cumulative Fix 14 for AIX
5.1.1.14: WebSphere Application Server V5.1.1 Cumulative Fix 14 for Linux
5.1.1.14: WebSphere Application Server V5.1.1 Cumulative Fix 14 for Windows
5.1.1.15: WebSphere Application Server V5.1.1 Cumulative Fix 15 for Windows
5.0.2.5: WebSphere Application Server 5.0.2 Cumulative Fix 5
5.0.2.18: WebSphere Application Server 5.0.2 Cumulative Fix 18 for Linux
5.1.1.11: WebSphere Application Server V5.1.1 Cumulative Fix 11 for HP-UX
5.1.1.14: WebSphere Application Server V5.1.1 Cumulative Fix 14 for HP-UX
5.0.2.15: WebSphere Application Server 5.0.2 Cumulative Fix 15 for HP-UX
5.0.2.16: WebSphere Application Server 5.0.2 Cumulative Fix 16 for Linux
5.1.1.10: WebSphere Application Server V5.1.1 Cumulative Fix 10 for Solaris
5.1.1.15: WebSphere Application Server V5.1.1 Cumulative Fix 15 for AIX
5.1.1.15: WebSphere Application Server V5.1.1 Cumulative Fix 15 for HP-UX
5.0.2.2: WebSphere Application Server V5.0.2 Cumulative Fix 2
5.1.1.16: WebSphere Application Server V5.1.1 Cumulative Fix 16 for HP-UX
5.1.1.16: WebSphere Application Server V5.1.1 Cumulative Fix 16 for Linux
5.1.1.15: WebSphere Application Server V5.1.1 Cumulative Fix 15 for Linux
5.1.1.19: WebSphere Application Server V5.1.1 Cumulative Fix 19 for HP-UX



APAR status
Closed as program error.

Error description
In version 4 of WebSphere, customer was calling the
getUnderLyingConnection method to access the connection
object. This is causing a classcastexception in V5. This
ability is handled through the WSCallHelper method. The
customer needs the following methods permitted through the
WSCallHelper function so his applications will work in V5.
oracle.sql.StructDescriptor
StructDescriptor.createDescriptor(java.lang.String,
java.sql.Connection);
oracle.sql.ArrayDescriptor
ArrayDescriptor.createDescriptor(java.lang.String,
java.sql.Connection);
oracle.sql.ARRAY
new ARRAY(oracle.sql.ArrayDescriptor, java.sql.Connection,
java.lang.Object);
oracle.xml.sql.query.OracleXMLQuery(java.sql.Connection,
java.lang.String);
Local fix
None available
Problem summary
****************************************************************
* USERS AFFECTED: Users needing the ability to invoke vendor-  *
*                 specific methods on JDBC objects, such as    *
*                 the OracleResultSet.getOpaque method, or     *
*                 to invoke the following Oracle methods       *
*                 passing JDBC objects as parameters:          *
*                                                              *
*                 oracle.sql.ArrayDescriptor ArrayDescriptor:  *
*                   createDescriptor(java.lang.String,         *
*                     java.sql.Connection);                    *
*                 oracle.sql.ARRAY:                            *
*                   ARRAY(oracle.sql.ArrayDescriptor,          *
*                     java.sql.Connection, java.lang.Object);  *
*                 oracle.xml.sql.query.OracleXMLQuery:         *
*                   OracleXMLQuery(java.sql.Connection,        *
*                     java.lang.String);                       *
*                 oracle.sql.BLOB:                             *
*                   createTemporary(java.sql.Connection,       *
*                     boolean, int)                            *
*                 oracle.sql.CLOB:                             *
*                   createTemporary(java.sql.Connection,       *
*                     boolean, int);                           *
*                 oracle.xdb.XMLType:                          *
*                   createXML(java.sql.Connection,             *
*                     java.lang.String);                       *
****************************************************************
* PROBLEM DESCRIPTION: WebSphere Application Server            *
*                      Connection Pooling conforms to the      *
*                      JDBC 2.0 specification. It provides     *
*                      wrapper objects for JDBC objects        *
*                      which implement the methods required    *
*                      by the JDBC 2.0 interfaces. Due to      *
*                      this implementation, vendor specific,   *
*                      nonstandard JDBC methods on JDBC        *
*                      objects, or methods requiring vendor    *
*                      specific objects to be passed as        *
*                      parameters will not work in the         *
*                      traditional manner.                     *
****************************************************************
* RECOMMENDATION:                                              *
****************************************************************
Attempting to invoke a non-standard JDBC method on a JDBC
object (such as the OracleResultSet.getOPAQUE method) requires
casting the JDBC object to the vendor JDBC object.  However,
since WebSphere's JDBC objects implement the JDBC interfaces,
not the specific vendor interfaces, this results in a
ClassCastException.

Similarly, attempting to invoke a vendor-specific method which
takes as a paramter a vendor-specific JDBC object results in a
ClassCastException when the vendor code attempts to cast the
WebSphere specification-compliant interfaces to the vendor
object.

Customers need a way to invoke these methods and pass the
underlying vendor object while still allowing these objects
to participate in WebSphere Connection Pooling.
Problem conclusion
Two static WebSphere-specific methods are added to solve the
two cases addressed in this APAR.  The
com.ibm.websphere.rsadapter.WSCallHelper.jdbcCall method
allows for the invocation of vendor-specific methods on a
JDBC object.  The
com.ibm.websphere.rsadapter.WSCallHelper.jdbcPass method
allows customers to pass the vendor specific objects to
another method.  See technote 1142347 on the WebSphere
Support website for more details and javadoc on these methods.
Temporary fix Comments
APAR information
APAR number PQ78067
Reported component name WAS BASE 5.0
Reported component ID 5630A3600
Reported release 00W
Status CLOSED PER
PE NoPE
HIPER NoHIPER
Special Attention NoSpecatt
Submitted date 2003-09-03
Closed date 2003-11-10
Last modified date 2003-11-10

APAR is sysrouted FROM one or more of the following:

APAR is sysrouted TO one or more of the following:

Modules/Macros
adapter          

Publications Referenced

Fix information

Applicable component levels
R003 PSN    UP
R00A PSN    UP
R00W PSY    UP


Document Information


Product categories: Software > Application Servers > Distributed Application & Web Servers > WebSphere Application Server > General
Operating system(s):
Software version: 00W
Software edition:
Reference #: PQ78067
IBM Group: Software Group
Modified date: Nov 10, 2003