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