IBM Support

PH40901: NULLPOINTEREXCEPTION DURING JIT EJB STUB GENERATION

Subscribe to this APAR

By subscribing, you receive periodic emails alerting you to the status of the APAR, along with a link to the fix after it becomes available. You can track this item individually or track all items by product.

Notify me when this APAR changes.

Notify me when an APAR for this component changes.

 

APAR status

  • Closed as program error.

Error description

  • JIT EJB stub generation fails with the following exception:
    
    [9/23/21 11:17:01:988 PDT]     FFDC
    Exception:java.lang.NullPointerException
    SourceId:com.ibm.ws.ejbcontainer.jitdeploy.JIT_StubPluginImpl.de
    fineStubClass ProbeId:95
    Reporter:com.ibm.ws.ejbcontainer.jitdeploy.JIT_StubPluginImpl@bf
    ee06d
    java.lang.NullPointerException
     at java.util.Hashtable.get(Hashtable.java:403)
     at
    java.lang.ClassLoader.getClassLoadingLock(ClassLoader.java:1013)
     at
    com.ibm.ws.classloader.CompoundClassLoader.defineApplicationClas
    s(CompoundClassLoader.java:719)
     at
    com.ibm.ws.ejbcontainer.jitdeploy.JIT_StubPluginImpl.defineStubC
    lass(JIT_StubPluginImpl.java:276)
     at
    com.ibm.ws.classloader.CompoundClassLoader.loadClass(CompoundCla
    ssLoader.java:652)
     at java.lang.ClassLoader.loadClass(ClassLoader.java:873)
     at java.lang.Class.forNameImpl(Native Method)
     at java.lang.Class.forName(Class.java:404)
     at
    sun.rmi.server.LoaderHandler.loadClass(LoaderHandler.java:390)
     at
    sun.rmi.server.LoaderHandler.loadClass(LoaderHandler.java:198)
     at
    java.rmi.server.RMIClassLoader$2.loadClass(RMIClassLoader.java:6
    48)
     at
    java.rmi.server.RMIClassLoader.loadClass(RMIClassLoader.java:230
    )
     at com.ibm.rmi.util.ClassCache$1.run(ClassCache.java:203)
     at
    java.security.AccessController.doPrivileged(AccessController.jav
    a:682)
     at com.ibm.rmi.util.ClassCache.getClass(ClassCache.java:199)
     at com.ibm.rmi.util.ClassCache.get(ClassCache.java:129)
     at
    com.ibm.CORBA.iiop.UtilDelegateImpl.loadClass(UtilDelegateImpl.j
    ava:695)
     at javax.rmi.CORBA.Util.loadClass(Util.java:246)
     at com.ibm.rmi.util.Utility.loadClassOfType(Utility.java:857)
     at com.ibm.rmi.util.Utility.loadStubClass2(Utility.java:1552)
     at com.ibm.rmi.util.Utility.access$300(Utility.java:156)
     at
    com.ibm.rmi.util.Utility$RepIdToStubClassCache.get(Utility.java:
    366)
     at com.ibm.rmi.util.Utility.loadStubClass(Utility.java:1532)
     at
    com.ibm.rmi.iiop.DataValueReader.loadStub(DataValueReader.java:1
    070)
     at
    com.ibm.rmi.iiop.DataValueReader.newObjRef(DataValueReader.java:
    963)
     at com.ibm.rmi.iiop.CDRReader.read_Object(CDRReader.java:565)
     at com.ibm.rmi.iiop.CDRReader.read_Object(CDRReader.java:530)
     at
    com.ibm.rmi.iiop.EncoderInputStream.read_Object(EncoderInputStre
    am.java:816)
     at org.omg.CORBA.ObjectHelper.read(ObjectHelper.java:110)
     at
    com.ibm.WsnOptimizedNaming._NamingContextStub.resolve_complete_i
    nfo(_NamingContextStub.java:493)
     at
    com.ibm.ws.naming.jndicos.CNContextImpl$2.run(CNContextImpl.java
    :2959)
     at
    com.ibm.ws.naming.jndicos.CNContextImpl$2.run(CNContextImpl.java
    :2955)
     at
    com.ibm.ws.naming.util.CommonHelpers.retry(CommonHelpers.java:87
    1)
     at
    com.ibm.ws.naming.jndicos.CNContextImpl.cosResolve(CNContextImpl
    .java:2953)
     at
    com.ibm.ws.naming.jndicos.CNContextImpl.doLookup(CNContextImpl.j
    ava:1819)
     at
    com.ibm.ws.naming.jndicos.CNContextImpl.doLookup(CNContextImpl.j
    ava:1778)
     at
    com.ibm.ws.naming.jndicos.CNContextImpl.lookupExt(CNContextImpl.
    java:1435)
     at
    com.ibm.ws.naming.jndicos.CNContextImpl.lookup(CNContextImpl.jav
    a:617)
     at
    com.ibm.ws.naming.util.WsnInitCtx.lookup(WsnInitCtx.java:165)
     at
    com.ibm.ws.naming.util.WsnInitCtx.lookup(WsnInitCtx.java:179)
     at javax.naming.InitialContext.lookup(InitialContext.java:428)
     at
    org.grnds.facility.factory.GrndsJndiProducer.produce(GrndsJndiPr
    oducer.java:120)
    ...
     at
    org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:
    293)
     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
     at
    sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessor
    Impl.java:90)
     at
    sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethod
    AccessorImpl.java:55)
     at java.lang.reflect.Method.invoke(Method.java:508)
     at
    org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtil
    s.java:106)
     at org.apache.tools.ant.Task.perform(Task.java:348)
     at org.apache.tools.ant.Target.execute(Target.java:435)
     at org.apache.tools.ant.Target.performTasks(Target.java:456)
     at
    org.apache.tools.ant.Project.executeSortedTargets(Project.java:1
    405)
     at
    org.apache.tools.ant.Project.executeTarget(Project.java:1376)
     at
    org.apache.tools.ant.helper.DefaultExecutor.executeTargets(Defau
    ltExecutor.java:41)
     at
    org.apache.tools.ant.Project.executeTargets(Project.java:1260)
     at org.apache.tools.ant.Main.runBuild(Main.java:857)
     at org.apache.tools.ant.Main.startAnt(Main.java:236)
     at org.apache.tools.ant.Main.start(Main.java:199)
     at org.apache.tools.ant.Main.main(Main.java:287)
     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
     at
    sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessor
    Impl.java:90)
     at
    sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethod
    AccessorImpl.java:55)
     at java.lang.reflect.Method.invoke(Method.java:508)
     at
    com.ibm.ws.client.applicationclient.launchClient.createContainer
    AndLaunchApp(launchClient.java:869)
     at
    com.ibm.ws.client.applicationclient.launchClient.main(launchClie
    nt.java:515)
     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
     at
    sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessor
    Impl.java:90)
     at
    sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethod
    AccessorImpl.java:55)
     at java.lang.reflect.Method.invoke(Method.java:508)
     at
    com.ibm.wsspi.bootstrap.WSLauncher.launchMain(WSLauncher.java:23
    4)
     at com.ibm.wsspi.bootstrap.WSLauncher.main(WSLauncher.java:101)
     at com.ibm.wsspi.bootstrap.WSLauncher.run(WSLauncher.java:82)
     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
     at
    sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessor
    Impl.java:90)
     at
    sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethod
    AccessorImpl.java:55)
     at java.lang.reflect.Method.invoke(Method.java:508)
     at
    org.eclipse.equinox.internal.app.EclipseAppContainer.callMethodW
    ithException(EclipseAppContainer.java:587)
     at
    org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseApp
    Handle.java:198)
     at
    org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.run
    Application(EclipseAppLauncher.java:110)
     at
    org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.sta
    rt(EclipseAppLauncher.java:79)
     at
    org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStart
    er.java:354)
     at
    org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStart
    er.java:181)
     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
     at
    sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessor
    Impl.java:90)
     at
    sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethod
    AccessorImpl.java:55)
     at java.lang.reflect.Method.invoke(Method.java:508)
     at
    org.eclipse.core.launcher.Main.invokeFramework(Main.java:340)
     at org.eclipse.core.launcher.Main.basicRun(Main.java:282)
     at org.eclipse.core.launcher.Main.run(Main.java:981)
     at
    com.ibm.wsspi.bootstrap.WSPreLauncher.launchEclipse(WSPreLaunche
    r.java:422)
     at
    com.ibm.wsspi.bootstrap.WSPreLauncher.main(WSPreLauncher.java:17
    9)
     at
    com.ibm.websphere.client.applicationclient.launchClient.main(lau
    nchClient.java:249)
    

Local fix

  • Manually run CreateEJBStubs command
    

Problem summary

  • ****************************************************************
    * USERS AFFECTED:  All users of IBM WebSphere Application      *
    *                  Server                                      *
    ****************************************************************
    * PROBLEM DESCRIPTION: A NullPointerException occurs during    *
    *                      just-in-time EJB stub generation        *
    ****************************************************************
    * RECOMMENDATION:                                              *
    ****************************************************************
    An issue in the lock mechanism used by the application class
    loader can cause a NullPointerException during just-in-time EJB
    stub generation. The exception will be logged to FFDC, and the
    JIT
    stub generation will fail.
    

Problem conclusion

  • The class loader locking was modified to utilize the appropriate
    lock name in all cases.
    
    The fix for this APAR is targeted for inclusion in fix pack
    9.0.5.12. 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

    PH40901

  • Reported component name

    WEBS APP SERV N

  • Reported component ID

    5724H8800

  • Reported release

    900

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2021-09-27

  • Closed date

    2022-02-07

  • Last modified date

    2022-02-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

    WEBS APP SERV N

  • Fixed component ID

    5724H8800

Applicable component levels

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

Document Information

Modified date:
08 February 2022