Fixes are available
7.0.0.29: WebSphere Application Server V7.0 Fix Pack 29
7.0.0.31: WebSphere Application Server V7.0 Fix Pack 31
7.0.0.33: WebSphere Application Server V7.0 Fix Pack 33
7.0.0.35: WebSphere Application Server V7.0 Fix Pack 35
7.0.0.37: WebSphere Application Server V7.0 Fix Pack 37
7.0.0.39: WebSphere Application Server V7.0 Fix Pack 39
7.0.0.41: WebSphere Application Server V7.0 Fix Pack 41
7.0.0.43: WebSphere Application Server V7.0 Fix Pack 43
7.0.0.45: WebSphere Application Server V7.0 Fix Pack 45
7.0.0.29: Java SDK 1.6 SR13 FP2 Cumulative Fix for WebSphere Application Server
7.0.0.45: Java SDK 1.6 SR16 FP60 Cumulative Fix for WebSphere Application Server
7.0.0.31: Java SDK 1.6 SR15 Cumulative Fix for WebSphere Application Server
7.0.0.35: Java SDK 1.6 SR16 FP1 Cumulative Fix for WebSphere Application Server
7.0.0.37: Java SDK 1.6 SR16 FP3 Cumulative Fix for WebSphere Application Server
7.0.0.39: Java SDK 1.6 SR16 FP7 Cumulative Fix for WebSphere Application Server
7.0.0.41: Java SDK 1.6 SR16 FP20 Cumulative Fix for WebSphere Application Server
7.0.0.43: Java SDK 1.6 SR16 FP41 Cumulative Fix for WebSphere Application Server
APAR status
Closed as program error.
Error description
Fields of an entity instance are nulled after calling EntityManager.remove() on an instance.
Local fix
N/A
Problem summary
**************************************************************** * USERS AFFECTED: All users of IBM WebSphere Application * * Server V7.0 who make calls to * * EntityManager.remove(). * **************************************************************** * PROBLEM DESCRIPTION: Java Persistence API (JPA) entities * * field values are null after calling * * EntityManager.remove(). * **************************************************************** * RECOMMENDATION: * **************************************************************** After a call is made to 'EntityManager.remove()', the fields of the removed entity are null. For example, take an entity named User which contains a 'name' field. Create an instance of User and set its name field, then persist the entity. After the persist, remove the entity. In so doing, the 'name' field will be null rather than the value previously set. The following source code illustrates this: // // EntityManager em is initialized before the following code // em.getTransaction().begin(); User user = new User(); user.setName("name1"); em.persist(user); em.getTransaction().commit(); //will print out name1: System.out.println(user.getName()); em.getTransaction().begin(); em.remove(user); em.getTransaction().commit(); //will print out null: System.out.println(user.getName()); According to the JPA 2.0 Spec, Section "3.2.3 Removal" states: "After an entity has been removed, its state (except for generated state) will be that of the entity at the point at which the remove operation was called."
Problem conclusion
With this fix, code has been added to OpenJPA to ensure that a JPA entities fields retain their state after a call to EntityManager.remove(). The fix for this APAR is currently targeted for inclusion in Service Level (Fix Pack) 7.0.0.29 of WebSphere Application Server version 7.0.0. 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
PM73099
Reported component name
WEBS APP SERV N
Reported component ID
5724H8800
Reported release
700
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt
Submitted date
2012-09-17
Closed date
2013-01-08
Last modified date
2013-01-08
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
PM73781
Fix information
Fixed component name
WEBS APP SERV N
Fixed component ID
5724H8800
Applicable component levels
R700 PSY
UP
Document Information
Modified date:
29 October 2021