APAR status
Closed as program error.
Error description
In a rule condition, when testing if a long variable 'is one of' of a java.lang.Integer domains, the following error is thrown during the ruleset generation: For instance the following rule throws this exception: if the age of person is one of { TEENAGER, CHILD } com.ibm.rules.engine.bytecode.asm.coding.ErrorCodingException: Could not cast ((java.lang.Number)((com.ibm.rules.engine.migrat ion.classdriver.runtime.XmlBindingServiceImpl)this#com.ibm.brl. generated.engine.CondExecEnv#.serviceHandler.xmlBindingServiceA ttr).getClassDriverManager().get(3,this#com.ibm.brl.generated.en n)).longValue()to java.lang.Integer((java.lang.Integer)((java.la m.ibm.rules.engine.migration.classdriver.runtime.XmlBindingServ iceImpl)this#com.ibm.brl.generated.engine.CondExecEnv#.serviceH andler.xmlBindingServiceAttr).getClassDriverManager().get(3,this n)).longValue()) in com.ibm.brl.generated.engine.CondExecEnv.test1() public boolean test1(){ return com.ibm.brl.generated.engineutil.gen.ArrayNotConstantCo ntainsMethods.containsForObject(newjava.lang.Integer[]{com.ibm.b is.getEngineData().AgeDomain_get_CHILD(),com.ibm.brl.generated.e geDomain_get_TEENAGER()},(java.lang.Integer)(((java.lang.Number) migration.classdriver.runtime.XmlBindingServiceImpl)com.ibm.brl .generated.engine.CondExecEnv.this.serviceHandler.xmlBindingSer viceAttr)).getClassDriverManager().get(3,com.ibm.brl.generated.e ))).longValue()); }
Local fix
Problem summary
**************************************************************** * USERS AFFECTED: * * Users generating ruleset. * **************************************************************** * PROBLEM DESCRIPTION: * * In a rule condition, when testing if a long variable 'is one * * of' * * of a java.lang.Integer domains, the following error is * * thrown * * during the ruleset generation: * * * * For instance the following rule throws this exception: * * * * if the age of person is one of { TEENAGER, CHILD } * * * * * * * * com.ibm.rules.engine.bytecode.asm.coding.ErrorCodingExceptio * * n: * * Could not cast * * ((java.lang.Number)((com.ibm.rules.engine.migrat * * ion.classdriver.runtime.XmlBindingServiceImpl)this#com.ibm.b * * rl. * * generated.engine.CondExecEnv#.serviceHandler.xmlBindingServi * * ceA * * ttr).getClassDriverManager().get(3,this#com.ibm.brl.generate * * d.en * * n)).longValue()to * * java.lang.Integer((java.lang.Integer)((java.la * * m.ibm.rules.engine.migration.classdriver.runtime.XmlBindingS * * erv * * iceImpl)this#com.ibm.brl.generated.engine.CondExecEnv#.servi * * ceH * * andler.xmlBindingServiceAttr).getClassDriverManager().get(3, * * this * * n)).longValue()) * * in com.ibm.brl.generated.engine.CondExecEnv.test1() * * public boolean test1(){ * * return * * com.ibm.brl.generated.engineutil.gen.ArrayNotConstantCo * * ntainsMethods.containsForObject(newjava.lang.Integer[]{com.i * * bm.b * * is.getEngineData().AgeDomain_get_CHILD(),com.ibm.brl.generat * * ed.e * * geDomain_get_TEENAGER()},(java.lang.Integer)(((java.lang.Num * * ber) * * migration.classdriver.runtime.XmlBindingServiceImpl)com.ibm. * * brl * * .generated.engine.CondExecEnv.this.serviceHandler.xmlBinding * * Ser * * viceAttr)).getClassDriverManager().get(3,com.ibm.brl.generat * * ed.e * * ))).longValue()); * * } * **************************************************************** * RECOMMENDATION: * ****************************************************************
Problem conclusion
Cast has been added to the code.
Temporary fix
Comments
APAR Information
APAR number
RS03940
Reported component name
WDS FOR RULES
Reported component ID
5725B6903
Reported release
8A0
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt / Xsystem
Submitted date
2022-07-05
Closed date
2022-07-20
Last modified date
2022-09-08
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
WDS FOR RULES
Fixed component ID
5725B6903
Applicable component levels
[{"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Product":{"code":"SSQP76","label":"IBM Decision Server"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"8A0","Line of Business":{"code":"LOB45","label":"Automation"}}]
Document Information
Modified date:
08 September 2022