IBM Support

PM26955: Errors generating and running COBOL program using a record with nested dynamic arrays

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • Rational Business Developer V7.5.1.5:
    
    There are two errors that may occur when generating or running a
    COBOL that uses nested dynamic arrays (record includes dynamic
    array of another EGL record, and that record also includes
    dynamic array of another EGL record).
    
    The first error is a NullPointerException that occurs during
    COBOL generation.  This problem occurs when the dynamic arrays
    are initialized to zero [0].  When the dynamic arrays are
    uninitialized, generation works, but the program does not work
    in runtime.
    
    This EGL program invokes external web service from CICS, and the
    records are generated from a WSDL file.
    
    The following is the stack trace that is written to the EGL
    Generations Results view:
    
    IWN.VAL.9999.e 0/0 Stack Trace: java.lang.NullPointerException
    IWN.VAL.9999.e 0/0 Stack Trace:       at
    com.ibm.etools.egl.generation.cobol.analyzers.factories.DynamicA
    rrayCreationFactory.processField(Unknown Source)
    IWN.VAL.9999.e 0/0 Stack Trace:       at
    com.ibm.etools.egl.generation.cobol.analyzers.factories.DynamicA
    rrayCreationFactory.visit(Unknown Source)
    IWN.VAL.9999.e 0/0 Stack Trace:       at
    com.ibm.etools.edt.core.ir.internal.impl.FieldImpl.accept(Unknow
    n Source)
    IWN.VAL.9999.e 0/0 Stack Trace:       at
    com.ibm.etools.edt.core.ir.internal.impl.LogicAndDataPartImpl.vi
    sitChildren(Unknown Source)
    IWN.VAL.9999.e 0/0 Stack Trace:       at
    com.ibm.etools.egl.generation.cobol.analyzers.factories.DynamicA
    rrayCreationFactory.visit(Unknown Source)
    IWN.VAL.9999.e 0/0 Stack Trace:       at
    com.ibm.etools.edt.core.ir.internal.impl.NameTypeImpl.accept(Unk
    nown Source)
    IWN.VAL.9999.e 0/0 Stack Trace:       at
    com.ibm.etools.edt.core.ir.internal.impl.ArrayTypeImpl.visitChil
    dren(Unknown Source)
    IWN.VAL.9999.e 0/0 Stack Trace:       at
    com.ibm.etools.edt.core.ir.internal.impl.ArrayTypeImpl.accept(Un
    known Source)
    IWN.VAL.9999.e 0/0 Stack Trace:       at
    com.ibm.etools.edt.core.ir.internal.impl.FieldImpl.visitChildren
    (Unknown Source)
    IWN.VAL.9999.e 0/0 Stack Trace:       at
    com.ibm.etools.edt.core.ir.internal.impl.FieldImpl.accept(Unknow
    n Source)
    IWN.VAL.9999.e 0/0 Stack Trace:       at
    com.ibm.etools.edt.core.ir.internal.impl.LogicAndDataPartImpl.vi
    sitChildren(Unknown Source)
    IWN.VAL.9999.e 0/0 Stack Trace:       at
    com.ibm.etools.egl.generation.cobol.analyzers.factories.DynamicA
    rrayCreationFactory.visit(Unknown Source)
    IWN.VAL.9999.e 0/0 Stack Trace:       at
    com.ibm.etools.edt.core.ir.internal.impl.NameTypeImpl.accept(Unk
    nown Source)
    IWN.VAL.9999.e 0/0 Stack Trace:       at
    com.ibm.etools.edt.core.ir.internal.impl.FieldImpl.visitChildren
    (Unknown Source)
    IWN.VAL.9999.e 0/0 Stack Trace:       at
    com.ibm.etools.edt.core.ir.internal.impl.FieldImpl.accept(Unknow
    n Source)
    IWN.VAL.9999.e 0/0 Stack Trace:       at
    com.ibm.etools.edt.core.ir.internal.impl.LogicAndDataPartImpl.vi
    sitChildren(Unknown Source)
    IWN.VAL.9999.e 0/0 Stack Trace:       at
    com.ibm.etools.egl.generation.cobol.analyzers.factories.DynamicA
    rrayCreationFactory.visit(Unknown Source)
    IWN.VAL.9999.e 0/0 Stack Trace:       at
    com.ibm.etools.edt.core.ir.internal.impl.NameTypeImpl.accept(Unk
    nown Source)
    IWN.VAL.9999.e 0/0 Stack Trace:       at
    com.ibm.etools.edt.core.ir.internal.impl.FieldImpl.visitChildren
    (Unknown Source)
    IWN.VAL.9999.e 0/0 Stack Trace:       at
    com.ibm.etools.edt.core.ir.internal.impl.FieldImpl.accept(Unknow
    n Source)
    IWN.VAL.9999.e 0/0 Stack Trace:       at
    com.ibm.etools.egl.generation.cobol.analyzers.factories.DynamicA
    rrayCreationFactory.<init>(Unknown Source)
    IWN.VAL.9999.e 0/0 Stack Trace:       at
    com.ibm.etools.egl.generation.cobol.analyzers.language.analysis.
    ApplicationAnalyzer.processField(Unknown Source)
    IWN.VAL.9999.e 0/0 Stack Trace:       at
    com.ibm.etools.egl.generation.cobol.analyzers.language.analysis.
    ApplicationAnalyzer.visit(Unknown Source)
    IWN.VAL.9999.e 0/0 Stack Trace:       at
    com.ibm.etools.edt.core.ir.internal.impl.FieldImpl.accept(Unknow
    n Source)
    IWN.VAL.9999.e 0/0 Stack Trace:       at
    com.ibm.etools.edt.core.ir.internal.impl.LogicAndDataPartImpl.vi
    sitChildren(Unknown Source)
    IWN.VAL.9999.e 0/0 Stack Trace:       at
    com.ibm.etools.edt.core.ir.internal.impl.ProgramImpl.visitChildr
    en(Unknown Source)
    IWN.VAL.9999.e 0/0 Stack Trace:       at
    com.ibm.etools.egl.generation.cobol.analyzers.language.analysis.
    ApplicationAnalyzer.<init>(Unknown Source)
    IWN.VAL.9999.e 0/0 Stack Trace:       at
    com.ibm.etools.egl.generation.cobol.analyzers.language.analysis.
    ProgramAnalyzer.<init>(Unknown Source)
    IWN.VAL.9999.e 0/0 Stack Trace:       at
    com.ibm.etools.egl.generation.cobol.COBOLProcessor.visit(Unknown
    Source)
    IWN.VAL.9999.e 0/0 Stack Trace:       at
    com.ibm.etools.edt.core.ir.internal.impl.ProgramImpl.accept(Unkn
    own Source)
    IWN.VAL.9999.e 0/0 Stack Trace:       at
    com.ibm.etools.edt.internal.core.ide.generation.GeneratePartsOpe
    ration.invokeGenerators(Unknown Source)
    IWN.VAL.9999.e 0/0 Stack Trace:       at
    com.ibm.etools.edt.internal.core.ide.generation.GeneratePartsOpe
    ration.invokeGenerators(Unknown Source)
    IWN.VAL.9999.e 0/0 Stack Trace:       at
    com.ibm.etools.edt.internal.core.ide.generation.GeneratePartsOpe
    ration.generate(Unknown Source)
    IWN.VAL.9999.e 0/0 Stack Trace:       at
    com.ibm.etools.edt.internal.core.ide.generation.GeneratePartsOpe
    ration.generateParts(Unknown Source)
    IWN.VAL.9999.e 0/0 Stack Trace:       at
    com.ibm.etools.edt.internal.core.ide.generation.GeneratePartsOpe
    ration$2.execute(Unknown Source)
    IWN.VAL.9999.e 0/0 Stack Trace:       at
    org.eclipse.ui.actions.WorkspaceModifyOperation$1.run(Unknown
    Source)
    IWN.VAL.9999.e 0/0 Stack Trace:       at
    org.eclipse.core.internal.resources.Workspace.run(Unknown
    Source)
    IWN.VAL.9999.e 0/0 Stack Trace:       at
    org.eclipse.ui.actions.WorkspaceModifyOperation.run(Unknown
    Source)
    IWN.VAL.9999.e 0/0 Stack Trace:       at
    com.ibm.etools.edt.internal.core.ide.generation.GeneratePartsOpe
    ration$1.run(Unknown Source)
    IWN.VAL.9999.e 0/0 Stack Trace:       at
    org.eclipse.core.internal.jobs.Worker.run(Unknown Source)
    
    The second problem occurs at runtime and the following error is
    received:
    
      An error occurred when trying to invoke a Web Service
      function.
    
      EXEC CICS INVOKE WEBSERVICE XYZaClient RESP 16, RESP2 13
      Web Service Proxy:  XYZWSP.  Service invocation exception.
    

Local fix

Problem summary

  • ****************************************************************
    * USERS AFFECTED:                                              *
    ****************************************************************
    * PROBLEM DESCRIPTION:                                         *
    ****************************************************************
    * RECOMMENDATION:                                              *
    ****************************************************************
    A null pointer exception can occur when a dynamic array of
    records that contains other dynamic arrays is defined. This
    would happen when the logic was trying to initialize the
    record array. The symptom shows a null pointer exception
    occurring in the DynamicArrayCreationFactory.
    

Problem conclusion

  • Software updated. Fixtest available.
    

Temporary fix

Comments

APAR Information

  • APAR number

    PM26955

  • Reported component name

    RBD EGL FOR COB

  • Reported component ID

    5724S5001

  • Reported release

    751

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt

  • Submitted date

    2010-11-17

  • Closed date

    2011-05-06

  • Last modified date

    2011-05-06

  • 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

    RBD EGL FOR COB

  • Fixed component ID

    5724S5001

Applicable component levels

  • R751 PSN

       UP

[{"Business Unit":{"code":"BU058","label":"IBM Infrastructure w\/TPS"},"Product":{"code":"SSMQ79","label":"Rational Business Developer"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"7.5.1","Edition":"","Line of Business":{"code":"LOB35","label":"Mainframe SW"}}]

Document Information

Modified date:
06 May 2011