Fix (APAR): IZ09242 Status: Fix Product: WBI Release: 6.0.2.2 Operating System: All operating systems Supersedes Fixes: Pre-requisite Fixes: Exclusive-requisite Fixes: CMVC Defect: IZ09242 Byte size of APAR: 15600 Date: 2007-11-27 Abstract: NPE due to non-thread-safe EMF code. Description/symptom of problem: 1) Symptom: -------- [11/7/07 14:46:01:384 EST] 000003df TraceBPE 3 com.ibm.bpe.engine.BpelActivityKindInvoke.doActivate(BpelActivityKindInvoke.java) java.lang.NullPointerException at org.eclipse.emf.ecore.util.BasicExtendedMetaData.getElements(BasicExtendedMetaData.java(Compiled Code)) at org.eclipse.emf.ecore.util.BasicExtendedMetaData.getAllElements(BasicExtendedMetaData.java(Compiled Code)) at org.eclipse.emf.ecore.util.BasicExtendedMetaData.getLocalElement(BasicExtendedMetaData.java(Compiled Code)) at org.eclipse.emf.ecore.util.BasicExtendedMetaData.demandFeature(BasicExtendedMetaData.java(Compiled Code)) at org.eclipse.emf.ecore.util.BasicExtendedMetaData.demandFeature(BasicExtendedMetaData.java(Inlined Compiled Code)) at com.ibm.bpe.invocation.SCAInvocationHandler.getEPR4ComponentInterface(SCAInvocationHandler.java(Compiled Code)) 2) Problem: -------- The source of the problem is that EMF's ExtendedMetaData.demandFeature is not thread-safe. In com.ibm.bpe.invocation.SCAInvocationHandler.getEPR4ComponentInterface, we call a singleton BasicExtendedMetaData. So it causes NPE when there is concurrency. The fix is to create BasicExtendedMetaData instance per call or synchronize on calls of demandFeature. 3) Solution: --------- This interim fix solves the described problem. Directions to apply fix: 1) Copy pak file to the directory maintenance in the UpdateInstaller directory 2) Shutdown WebSphere. It is important that you perform a controlled and complete shutdown of the server to ensure that all transactions have completed, before installing the fix. 3) Follow the Fix installation instructions that are packaged with the Fix Installer on how to install the Fix. 4) Restart WebSphere Directions to remove fix: NOTE: FIXES MUST BE REMOVED IN THE ORDER THEY WERE APPLIED. DO NOT REMOVE A FIX UNLESS ALL FIXES APPLIED AFTER IT HAVE FIRST BEEN REMOVED. YOU MAY REAPPLY ANY REMOVED FIX. Example: If your system has fix1, fix2, and fix3 applied in that order and fix2 is to be removed, fix3 must be removed first, then fix2 may be removed 1) Shutdown WebSphere. It is important that you perform a controlled and complete shutdown of the server to ensure that all transactions have completed, before installing the fix. 2) Follow the Fix instructions that are packaged with the Fix Installer on how to uninstall and reinstall the Fix. 3) Restart WebSphere Directions to re-apply fix: 1) Shutdown WebSphere. It is important that you perform a controlled and complete shutdown of the server to ensure that all transactions have completed, before installing the fix. 2) Follow the Fix instructions that are packaged with the Fix Installer on how to uninstall and reinstall the Fix. 3) Restart WebSphere Additional Information: