IBM Support

PH26461: UNABLE TO BUILD CICS TRANSACTION FROM JAVA PROGRAM

A fix is available

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • E CWWKE0701E: com.ibm.cics.wlp.impl CICSTaskWrapper
    @Error: buildTransaction() - Exception com.ibm.cics.domains.
    DomainException: Class: Dfhsjjsj, function: BUILD_TRANSACTION,
    response: EXCEPTION, reason: NOT_AUTH_SET_USERID
    
    The transaction build fails as the child thread does not
    pick up the id of the parent task as expected.
    

Local fix

Problem summary

  • ****************************************************************
    * USERS AFFECTED: All CICS users.                              *
    ****************************************************************
    * PROBLEM DESCRIPTION: A task running in a JVM server is       *
    *                      unable to create a CICS task.           *
    *                      NOT_AUTH_SET_USERID is shown in JVMERR. *
    ****************************************************************
    A Liberty JVM server is enabled with Liberty z/OS security
    active.  Liberty handles a request that does not bind to a CICS
    task.  Examples of such requests could be a HTTP request to
    retrieve a static resource or a servlet which does not interact
    with the JCICS API.
    
    This causes a thread local variable to be set to the current
    user ID, however this is not propagated into CICS or cleared
    once the request has been handled because no CICS task was bound
    to the thread.
    
    As a result when another request uses this thread with the same
    user ID no DFHSJJS SWITCH_PTHREAD_CONTEXT domain call is made
    because the existing logic does not believe a call is necessary.
    
    If this new request binds to a CICS task exceptions may occur
    as the task will not be running under the expected user ID.
    
    In reporting customer's case this caused a
    com.ibm.cics.domains.DomainException to be written to the JVMERR
    file with function: BUILD_TRANSACTION, response: EXCEPTION,
    reason: NOT_AUTH_SET_USERID
    

Problem conclusion

  • CICS has been updated to ensure the thread local variable used
    to store the user ID is cleared even if no CICS task is bound.
    

Temporary fix

Comments

APAR Information

  • APAR number

    PH26461

  • Reported component name

    CICS TS Z/OS V5

  • Reported component ID

    5655Y0400

  • Reported release

    100

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2020-06-15

  • Closed date

    2020-09-02

  • Last modified date

    2020-10-01

  • APAR is sysrouted FROM one or more of the following:

  • APAR is sysrouted TO one or more of the following:

    UI71354 UI71355 UI71356

Modules/Macros

  • DFJ@H387
    

Fix information

  • Fixed component name

    CICS TS Z/OS V5

  • Fixed component ID

    5655Y0400

Applicable component levels

  • R10D PSY UI71354

       UP20/09/04 P F009

  • R200 PSY UI71355

       UP20/09/16 P F009

  • R300 PSY UI71356

       UP20/09/09 P F009

Fix is available

  • Select the PTF appropriate for your component level. You will be required to sign in. Distribution on physical media is not available in all countries.

[{"Line of Business":{"code":"LOB35","label":"Mainframe SW"},"Business Unit":{"code":"BU058","label":"IBM Infrastructure w\/TPS"},"Product":{"code":"SSGMGV","label":"CICS Transaction Server"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"5.4"}]

Document Information

Modified date:
02 October 2020