IBM Support

PI34748: JNDI ACCESS PERFORMED IN WRONG THREAD

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • When Worklight Server runs in WebSphere Application Server Full
    Profile, the log files contains an error:
    
    javax.naming.ConfigurationException: A JNDI operation on a
    "java:" name cannot be completed because the server runtime is
    not able to associate the operation's thread with any J2EE
    application component.  This condition can occur when the JNDI
    client using the "java:" name is not executed on the thread of a
    server application request.  Make sure that a J2EE application
    does not execute JNDI operations on "java:" names within static
    code blocks or in threads created by that J2EE application.
    Such code does not necessarily run on the thread of a server
    application request and therefore is not supported by JNDI
    operations on "java:" names. [Root exception is
    javax.naming.NameNotFoundException: Name
    "comp/env/ibm.worklight.admin.maxLockTimeInMillis" not found in
    context "java:".]
    
    with a stack trace that references the method
    com.ibm.worklight.admin.util.LockUtil$1.getMaxLockTimeUntilDecla
    redDead.
    

Local fix

Problem summary

  • ****************************************************************
    * USERS AFFECTED:                                              *
    * Administrators of the Worklight Server running in Websphere  *
    ****************************************************************
    * PROBLEM DESCRIPTION:                                         *
    * The Administrative Services that are part of the Worklight   *
    * Server access certain JNDI properties that control the       *
    * timing of locks. If the JNDI properties are not found, their *
    * default values are taken. In rare cases, the Administrative  *
    * Services fail to access the JNDI properties since the access *
    * is done in a non-servlet thread. This is forbidden in        *
    * Websphere while it works in Tomcat and Liberty.              *
    *                                                              *
    * When it happens, a log message is written to the log files   *
    * and the default value is taken instead of a specified value. *
    ****************************************************************
    * RECOMMENDATION:                                              *
    * -                                                            *
    ****************************************************************
    

Problem conclusion

  • JNDI properties are cached before a non-servlet thread is spawn.
    The error was in the caching mechanism and has been solved.
    Customers must redeploy the worklightadmin.war file.
    

Temporary fix

Comments

APAR Information

  • APAR number

    PI34748

  • Reported component name

    WL/MFPF CONSUME

  • Reported component ID

    5725I4301

  • Reported release

    620

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt

  • Submitted date

    2015-02-10

  • Closed date

    2015-04-07

  • Last modified date

    2015-04-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

    WL/MFPF CONSUME

  • Fixed component ID

    5725I4301

Applicable component levels

  • R620 PSY

       UP

  • R630 PSY

       UP

[{"Business Unit":{"code":"BU053","label":"Cloud & Data Platform"},"Product":{"code":"SSZH4A","label":"IBM Worklight"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"620","Line of Business":{"code":"LOB45","label":"Automation"}}]

Document Information

Modified date:
17 October 2021