IBM Support

PM99374: JPA VERSION FIELD IN A PROJECTION ALWAYS RETURNED AS AN INTEGER

Fixes are available

8.5.5.2: WebSphere Application Server V8.5.5 Fix Pack 2
8.0.0.9: WebSphere Application Server V8.0 Fix Pack 9
8.5.5.3: WebSphere Application Server V8.5.5 Fix Pack 3
8.5.5.4: WebSphere Application Server V8.5.5 Fix Pack 4
8.0.0.10: WebSphere Application Server V8.0 Fix Pack 10
8.5.5.5: WebSphere Application Server V8.5.5 Fix Pack 5
8.5.5.6: WebSphere Application Server V8.5.5 Fix Pack 6
8.0.0.11: WebSphere Application Server V8.0 Fix Pack 11
8.5.5.7: WebSphere Application Server V8.5.5 Fix Pack 7
8.5.5.8: WebSphere Application Server V8.5.5 Fix Pack 8
8.0.0.12: WebSphere Application Server V8.0 Fix Pack 12
8.5.5.9: WebSphere Application Server V8.5.5 Fix Pack 9
8.5.5.10: WebSphere Application Server V8.5.5 Fix Pack 10
8.5.5.11: WebSphere Application Server V8.5.5 Fix Pack 11
8.0.0.13: WebSphere Application Server V8.0 Fix Pack 13
8.5.5.12: WebSphere Application Server V8.5.5 Fix Pack 12
8.0.0.14: WebSphere Application Server V8.0 Fix Pack 14
8.5.5.13: WebSphere Application Server V8.5.5 Fix Pack 13
8.0.0.15: WebSphere Application Server V8.0 Fix Pack 15
8.5.5.14: WebSphere Application Server V8.5.5 Fix Pack 14
8.5.5.15: WebSphere Application Server V8.5.5 Fix Pack 15
8.5.5.14: WebSphere Application Server V8.5.5 Fix Pack 14
8.5.5.17: WebSphere Application Server V8.5.5 Fix Pack 17
8.5.5.20: WebSphere Application Server V8.5.5.20
8.5.5.18: WebSphere Application Server V8.5.5 Fix Pack 18
8.5.5.19: WebSphere Application Server V8.5.5 Fix Pack 19
8.5.5.16: WebSphere Application Server V8.5.5 Fix Pack 16
8.5.5.21: WebSphere Application Server V8.5.5.21

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • When a JPQL query is run to retrieve a field of a JPA Entity,
    JPA should return the correct Java type as defined in the JPA
    Entity.  However, when a field defined as an @Version, and a
    type of Long or Short, the returned field type is an Integer.
    

Local fix

Problem summary

  • ****************************************************************
    * USERS AFFECTED:  All users of IBM WebSphere Application      *
    *                  Server V8.0.0, V8.5.0, and V8.5.5 who make  *
    *                  use of a JPA @Version field.                *
    ****************************************************************
    * PROBLEM DESCRIPTION: Version field in a JPA projection       *
    *                      always returned as an Integer.          *
    ****************************************************************
    * RECOMMENDATION:                                              *
    ****************************************************************
    There is an issue where a @Version field is returned as an
    Integer when the field is defined as a Long or Short. To
    explain, lets take this entity:
    @Entity
    public class LongVersionEntity implements Serializable {
    .......
     ‚   ‚   ‚   ‚  @Version
     ‚   ‚   ‚   ‚  protected Long version;
    .......
    With this entity take the following query:
    String str = "SELECT o.id, o.version FROM LongVersionEntity o";
    Query query = em.createQuery(str);
    List<Object[]> objectList = query.getResultList();
    for (Object[] objects : objectList) {
     &#130; &#160; &#130; &#160; &#130; &#160; &#130; &#160;objects[1].getClass() //Will return Integer.
    ........
    Notice in this query we are selecting the version field. When
    iterating over the results, we will find that
    objects[1].getClass() will return Integer, rather than Long.
    The results are the same for the other supported types,
    except for Timestamp.
    

Problem conclusion

  • With this fix, code has been added to OpenJPA to ensure that
    an @Version field returned from a query is of the correct type.
    
    The fix for this APAR is currently targeted for
    inclusion in Service Levels (Fix Packs) 8.0.0.9 and 8.5.5.2 of
    WebSphere Application Server versions 8.0.0 and 8.5.5.
    
    Please refer to the recommended updates page for delivery
    information:
    http://www.ibm.com/support/docview.wss?rs=180&uid=swg27004980
    

Temporary fix

Comments

APAR Information

  • APAR number

    PM99374

  • Reported component name

    WEBS APP SERV N

  • Reported component ID

    5724H8800

  • Reported release

    800

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt

  • Submitted date

    2013-10-17

  • Closed date

    2014-01-15

  • Last modified date

    2014-01-15

  • 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

    WEBS APP SERV N

  • Fixed component ID

    5724H8800

Applicable component levels

  • R800 PSY

       UP

  • R850 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":"8.0","Line of Business":{"code":"LOB45","label":"Automation"}}]

Document Information

Modified date:
28 April 2022