IBM Support

PH20421: ECLIPSELINK: UNRECOGNIZED JDBC CURSOR TYPE FOR DB2

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • EclipseLink does not currently support the JDBC Cursor type,
    for DB2, with StoredProcedures. Attempting to use Cursor type,
    will result in an exception from EclipseLink as the wrong type
    code is used:
    
    Caused by: com.ibm.db2.jcc.am.SqlException: [jcc][10271][10296][
     at com.ibm.db2.jcc.am.b6.a(b6.java:794)
     at com.ibm.db2.jcc.am.b6.a(b6.java:66)
     at com.ibm.db2.jcc.am.b6.a(b6.java:116)
     at com.ibm.db2.jcc.am.an.m(an.java:1507)
     at com.ibm.db2.jcc.am.CallableStatement.b(CallableStatement.jav
     at com.ibm.db2.jcc.am.CallableStatement.n(CallableStatement.jav
     at com.ibm.db2.jcc.am.CallableStatement.registerOutParameter(Ca
     at org.eclipse.persistence.internal.databaseaccess.DatabasePlat
     at org.eclipse.persistence.internal.databaseaccess.OutputParame
     at org.eclipse.persistence.internal.databaseaccess.DatabasePlat
     at org.eclipse.persistence.internal.databaseaccess.DatabaseCall
     at org.eclipse.persistence.queries.StoredProcedureCall.prepareS
     at org.eclipse.persistence.internal.databaseaccess.DatabaseAcce
    

Local fix

Problem summary

  • ****************************************************************
    * USERS AFFECTED:  All users of IBM WebSphere Application      *
    *                  Server - Java Persistence API - JPA 2.1 &   *
    *                  EclipseLink                                 *
    ****************************************************************
    * PROBLEM DESCRIPTION: EclipseLink does not currently          *
    *                      support CURSORs for DB2                 *
    ****************************************************************
    * RECOMMENDATION:                                              *
    ****************************************************************
    EclipseLink's DatabasePlatform.cursorCode is invalid for DB2
    Cursors. Instead of the default value (-10), Db2 expects the
    java.sql.Type to be com.ibm.db2.jcc.DB2Types.CURSOR(-100008).
    If CURSORs are used with DB2, the following exception will be
    thrown:
    ´´´
    Caused by: com.ibm.db2.jcc.am.SqlException:
    [jcc][10271][10296][4.24.92] Unrecognized JDBC type: -10.
    ERRORCODE=-4228, SQLSTATE=null
    at com.ibm.db2.jcc.am.b6.a(b6.java:794)
    at com.ibm.db2.jcc.am.b6.a(b6.java:66)
    at com.ibm.db2.jcc.am.b6.a(b6.java:116)
    at com.ibm.db2.jcc.am.an.m(an.java:1507)
    at
    com.ibm.db2.jcc.am.CallableStatement.b(CallableStatement.java:41
    4)
    at
    com.ibm.db2.jcc.am.CallableStatement.n(CallableStatement.java:29
    8)
    at
    com.ibm.db2.jcc.am.CallableStatement.registerOutParameter(Callab
    leStatement.java:276)
    at
    org.eclipse.persistence.internal.databaseaccess.DatabasePlatform
    .registerOutputParameter(DatabasePlatform.java:1771)
    at
    org.eclipse.persistence.internal.databaseaccess.OutputParameterF
    orCallableStatement.set(OutputParameterForCallableStatement.java
    :103)
    at
    org.eclipse.persistence.internal.databaseaccess.DatabasePlatform
    .setParameterValueInDatabaseCall(DatabasePlatform.java:2579)
    at
    org.eclipse.persistence.internal.databaseaccess.DatabaseCall.pre
    pareStatement(DatabaseCall.java:813)
    at
    org.eclipse.persistence.queries.StoredProcedureCall.prepareState
    ment(StoredProcedureCall.java:855)
    at
    org.eclipse.persistence.internal.databaseaccess.DatabaseAccessor
    .basicExecuteCall(DatabaseAccessor.java:621)
    ´´´
    

Problem conclusion

Temporary fix

Comments

APAR Information

  • APAR number

    PH20421

  • Reported component name

    WEBSPHERE APP S

  • Reported component ID

    5724J0800

  • Reported release

    900

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2019-12-19

  • Closed date

    2020-02-03

  • Last modified date

    2020-02-03

  • APAR is sysrouted FROM one or more of the following:

  • APAR is sysrouted TO one or more of the following:

Fix information

  • Fixed component name

    WEBSPHERE APP S

  • Fixed component ID

    5724J0800

Applicable component levels

  • R900 PSY

       UP

[{"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Product":{"code":"SSEQTP","label":"WebSphere Application Server"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"9.0","Line of Business":{"code":"LOB45","label":"Automation"}}]

Document Information

Modified date:
02 November 2021