IBM Support

PI59633: When using JPA to persist an object, the JAX-RS engine does not correctly catch any exceptions that are thrown

Fixes are available

16.0.0.2: WebSphere Application Server Liberty 16.0.0.2
16.0.0.3: WebSphere Application Server Liberty 16.0.0.3
16.0.0.4: WebSphere Application Server Liberty 16.0.0.4
17.0.0.1: WebSphere Application Server Liberty 17.0.0.1
17.0.0.2: WebSphere Application Server Liberty 17.0.0.2
17.0.0.3: WebSphere Application Server Liberty 17.0.0.3
17.0.0.4: WebSphere Application Server Liberty 17.0.0.4
18.0.0.1: WebSphere Application Server Liberty 18.0.0.1
18.0.0.2: WebSphere Application Server Liberty 18.0.0.2
18.0.0.3: WebSphere Application Server Liberty 18.0.0.3
18.0.0.4: WebSphere Application Server Liberty 18.0.0.4
19.0.0.1: WebSphere Application Server Liberty 19.0.0.1
19.0.0.2: WebSphere Application Server Liberty 19.0.0.2
19.0.0.3: WebSphere Application Server Liberty 19.0.0.3
19.0.0.4: WebSphere Application Server Liberty 19.0.0.4
19.0.0.5: WebSphere Application Server Liberty 19.0.0.5
19.0.0.6: WebSphere Application Server Liberty 19.0.0.6
19.0.0.7: WebSphere Application Server Liberty 19.0.0.7
19.0.0.8: WebSphere Application Server Liberty 19.0.0.8
19.0.0.9: WebSphere Application Server Liberty 19.0.0.9
19.0.0.10: WebSphere Application Server Liberty 19.0.0.10
19.0.0.11: WebSphere Application Server Liberty 19.0.0.11
19.0.0.12: WebSphere Application Server Liberty 19.0.0.12
20.0.0.1: WebSphere Application Server Liberty 20.0.0.1
20.0.0.2: WebSphere Application Server Liberty 20.0.0.2
20.0.0.3: WebSphere Application Server Liberty 20.0.0.3
20.0.0.4: WebSphere Application Server Liberty 20.0.0.4
20.0.0.5: WebSphere Application Server Liberty 20.0.0.5
20.0.0.6: WebSphere Application Server Liberty 20.0.0.6
20.0.0.7: WebSphere Application Server Liberty 20.0.0.7
20.0.0.8: WebSphere Application Server Liberty 20.0.0.8
20.0.0.9: WebSphere Application Server Liberty 20.0.0.9
20.0.0.10: WebSphere Application Server Liberty 20.0.0.10
20.0.0.11: WebSphere Application Server Liberty 20.0.0.11
20.0.0.12: WebSphere Application Server Liberty 20.0.0.12

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • Java Exception Stack
    
    javax.transaction.TransactionRolledbackException:
    nested exception is: javax.transaction.RollbackException
    
    at
    com.ibm.tx.jta.impl.TransactionImpl.stage3CommitProcessing
    (TransactionImpl.java:1238)
    at
    com.ibm.tx.jta.impl.TransactionImpl.processCommit(Transactio
    nImp
    l. java:1035)
    at
    com.ibm.tx.jta.impl.TransactionImpl.commit(TransactionImpl.j
    ava:
    966)
    at
    com.ibm.tx.jta.impl.TranManagerImpl.commit(TranManagerImpl.j
    ava:
    237)
    at
    com.ibm.tx.jta.impl.TranManagerSet.commit(TranManagerSet.jav
    a:19
    1)
    at
    com.ibm.ejs.csi.TranStrategy.commit(TranStrategy.java:866)
    at
    com.ibm.ejs.csi.TranStrategy.postInvoke(TranStrategy.java:18
    8)
    at com.ibm.ejs.csi.TransactionControlImpl.postInvoke
    (TransactionControlImpl.java:482)
    at
    com.ibm.ejs.container.EJSContainer.postInvoke(EJSContainer.j
    ava:
    3989)
    at
    com.ibm.ejs.container.WSEJBWrapper.ejbPostInvoke(WSEJBWrappe
    r.ja
    va: 230)
    at
    com.ibm.ws.jaxws.ejb.EJBPostInvokeInterceptor.handleMessage
    (EJBPostInvokeInterceptor.java:48)
    at
    com.ibm.ws.jaxws.ejb.EJBPostInvokeInterceptor.handleMessage
    (EJBPostInvokeInterceptor.java:30)
    ...
    
    Caused by: myPackage.jdbc.JdbcSQLException:
    Unique index or primary key violation: ...
    INSERT INTO ...
    at myPackage.getJdbcSQLException()
    at myPackage.soAction.insert()
    ...
    at
    myPackage.jdbc.JdbcPreparedStatement.executeUpdateInternal(J
    dbcP
    reparedStatement.java:157)
    at
    myPackage.jdbc.JdbcPreparedStatement.executeUpdate(JdbcPrepa
    redS
    tatement.java:143)
    
    at
    com.ibm.ws.rsadapter.jdbc.WSJdbcPreparedStatement.executeUpd
    ate(
    WSJdbcPreparedStatement.java:602)
    

Local fix

Problem summary

  • ****************************************************************
    * USERS AFFECTED:  All users of IBM WebSphere Application      *
    *                  Server Liberty - Web Services (JAX-WS, JAX- *
    *                  RS)                                         *
    ****************************************************************
    * PROBLEM DESCRIPTION: Using JPA to persist an object, when    *
    *                      there is any exception thrown, the JAX- *
    *                      RS engine does not catch it correctly   *
    ****************************************************************
    * RECOMMENDATION:                                              *
    ****************************************************************
    JAX-RS called the EJB invoker too late, so JAX-RS will omit the
    exception
    

Problem conclusion

  • We fixed this issue by calling EJB invoker a little earlier,
    then we will catch all the exceptions thrown by EJB
    
    The fix for this APAR is currently targeted for inclusion in fix
    pack 16.0.0.2.  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

    PI59633

  • Reported component name

    WAS LIBERTY COR

  • Reported component ID

    5725L2900

  • Reported release

    855

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2016-03-23

  • Closed date

    2016-05-06

  • Last modified date

    2016-06-13

  • 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

    WAS LIBERTY COR

  • Fixed component ID

    5725L2900

Applicable component levels

  • R855 PSY

       UP

[{"Business Unit":{"code":"BU053","label":"Cloud \u0026 Data Platform"},"Product":{"code":"SSD28V","label":"WebSphere Application Server Liberty Core"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"855","Line of Business":{"code":"LOB36","label":"IBM Automation"}}]

Document Information

Modified date:
16 October 2021