APAR status
Closed as program error.
Error description
EclipseLink throws an exception for CriteriaBuilder queries that contain only literal values in WHERE clause and/or literal values in the SELECT clause. However, JPQL queries that also only contain literal values or parameters do not throw an exception. Exception example: ´´´ org.eclipse.persistence.exceptions.QueryException Exception Description: A reference class must be provided. Query: ReportQuery() at org.eclipse.persistence.exceptions.QueryException.referenceClass Missing(QueryException.java:1064) at org.eclipse.persistence.queries.ObjectLevelReadQuery.checkDescri ptor(ObjectLevelReadQuery.java:835) at org.eclipse.persistence.queries.DatabaseQuery.execute(DatabaseQu ery.java:828) at org.eclipse.persistence.queries.ObjectLevelReadQuery.execute(Obj ectLevelReadQuery.java:1142) at org.eclipse.persistence.queries.ReadAllQuery.execute(ReadAllQuer y.java:460) at org.eclipse.persistence.queries.ObjectLevelReadQuery.executeInUn itOfWork(ObjectLevelReadQuery.java:1230) at org.eclipse.persistence.internal.sessions.UnitOfWorkImpl.interna lExecuteQuery(UnitOfWorkImpl.java:2900) at org.eclipse.persistence.internal.sessions.AbstractSession.execut eQuery(AbstractSession.java:1866) at org.eclipse.persistence.internal.sessions.AbstractSession.execut eQuery(AbstractSession.java:1848) at org.eclipse.persistence.internal.sessions.AbstractSession.execut eQuery(AbstractSession.java:1813) at org.eclipse.persistence.internal.jpa.QueryImpl.executeReadQuery( QueryImpl.java:258) at org.eclipse.persistence.internal.jpa.QueryImpl.getResultList(Que ryImpl.java:473) ´´´
Local fix
Problem summary
**************************************************************** * USERS AFFECTED: All users of IBM WebSphere Application * * Server - Java Persistence API - JPA 2.1 & * * EclipseLink * **************************************************************** * PROBLEM DESCRIPTION: EclipseLink throws an exception for * * CriteriaBuilder queries with only * * literal values in WHERE clause or * * SELECT clause * **************************************************************** * RECOMMENDATION: * **************************************************************** Example: ´´´ CriteriaBuilder cb = em.getCriteriaBuilder( ); CriteriaQuery< Object[ ] > cq = cb.createQuery( Object[ ].class ); Root< Country > r = cq.from( Country.class ); cq.multiselect( cb.literal( "1" ), r.get( "name" ) ); em.createQuery( cq ).getResultList( ); ´´´ Exception: ´´´ org.eclipse.persistence.exceptions.QueryException Exception Description: A reference class must be provided. Query: ReportQuery() at org.eclipse.persistence.exceptions.QueryException.referenceClass Missing(QueryException.java:1064) at org.eclipse.persistence.queries.ObjectLevelReadQuery.checkDescri ptor(ObjectLevelReadQuery.java:827) at org.eclipse.persistence.queries.DatabaseQuery.execute(DatabaseQu ery.java:824) ´´´
Problem conclusion
The fix for this APAR changes the EclipseLink implementation and involves an update to the third-party source. See https://bugs.eclipse.org/bugs/show_bug.cgi?id=521402 This fix is currently targeted for WebSphere Application Server 9.0.5.9. For more information, see 'Recommended Updates for WebSphere Application Server': https://www.ibm.com/support/pages/node/715553
Temporary fix
Comments
APAR Information
APAR number
PH36843
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
2021-04-29
Closed date
2021-07-07
Last modified date
2021-07-07
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:
01 November 2021