Support Article
Queue method does not work and causes RuleNotFoundException
SA-2436
Summary
User was calling an activity - Activity_2 using "Queue" method at the 2nd step from Activity_1. The Activity_1 was configured as the Service method for REST Service.
Queue Activity_2
When the External REST client was used and Service was invoked, Activity_1 executes however Actiivity_2 call fails with due to RuleNotFoundException in the log file.
Error Messages
2014-09-17 00:06:19,751 [ PegaRULES-Batch-1] [ STANDARD] [ PegaRULES:07.10] (l.vtable.VirtualRulesTableImpl) INFO -
The 1 rules named 'Activity_2' defined in the rulebase are:
1 related to applies-to class 'abcd-efgh-ijkl-Work-Classname', but were defined in rulesets which are not in your rulesetlist: 'OMValidationApp:01-02-98'.
Current RulesetList:
Pega-ProcessCommander:07-10,
Pega-LP-ProcessAndRules:07-10,
Pega-LP-Integration:07-10,
Pega-LP-Reports:07-10,
Pega-LP-SystemSettings:07-10,
Pega-LP-UserInterface:07-10,
Pega-LP-OrgAndSecurity:07-10,
Pega-LP-DataModel:07-10,
Pega-LP-Application:07-10,
Pega-LP:07-10,
Pega-UpdateManager:07-10,
Pega-SecurityVA:07-10,
Pega-Feedback:07-10,
Pega-AutoTest:07-10,
Pega-AppDefinition:07-10,
Pega-ImportExport:07-10,
Pega-LocalizationTools:07-10,
Pega-RuleRefactoring:07-10,
Pega-ProcessArchitect:07-10,
Pega-Portlet:07-10,
Pega-Content:07-10,
Pega-IntegrationArchitect:07-10,
Pega-SystemArchitect:07-10,
Pega-Desktop:07-10,
Pega-EndUserUI:07-10,
Pega-Social:07-10,
Pega-EventProcessing:07-10,
Pega-Reporting:07-10,
Pega-UIDesign:07-10,
Pega-Gadgets:07-10,
Pega-UIEngine:07-10,
Pega-ProcessEngine:07-10,
Pega-SearchEngine:07-10,
Pega-IntegrationEngine:07-10,
Pega-RulesEngine:07-10,
Pega-Engine:07-10,
Pega-ProCom:07-10,
Pega-IntSvcs:07-10,
Pega-WB:07-10,
Pega-RULES:07-10
All Candidates:
2014-09-17 00:06:19,752 [ PegaRULES-Batch-1] [ STANDARD] [ PegaRULES:07.10] (l.vtable.VirtualRulesTableImpl) INFO - Handle |Avl |Ruleset |InstanceClass |Object Class |Implementation
2014-09-17 00:06:19,752 [ PegaRULES-Batch-1] [ STANDARD] [ PegaRULES:07.10] (l.vtable.VirtualRulesTableImpl) INFO - RULE-OBJ-ACTIVITY abcd-efgh-ijkl-Work-Classname Activity_2 #20140917T070129.007 GMT |Yes |OMValidationApp:01-02-98 |Rule-Obj-Activity |abcd-efgh-ijkl-Work-Classname |com.pegarules.generated.EMPTY_IMPL_NAME
2014-09-17 00:06:19,758 [ PegaRULES-Batch-1] [ STANDARD] [ PegaRULES:07.10] (ernal.async.BatchRequestorTask) ERROR - Batch activity "abcd-efgh-ijkl-Work-Classname.Activity_2" threw:
com.pega.pegarules.pub.PRRuntimeError: PRRuntimeError
at com.pega.pegarules.session.internal.mgmt.base.ThreadRunner.runActivitiesAlt(ThreadRunner.java:706)
at com.pega.pegarules.session.internal.mgmt.base.ThreadRunner.runActivities(ThreadRunner.java:567)
at com.pega.pegarules.session.internal.mgmt.PRThreadImpl.runActivities(PRThreadImpl.java:425)
at com.pega.pegarules.session.internal.async.agent.QueueProcessor.executeBatchTask(QueueProcessor.java:259)
at com.pega.pegarules.session.internal.async.agent.QueueProcessor.execute(QueueProcessor.java:322)
at com.pega.pegarules.session.internal.async.BatchRequestorTask.run(BatchRequestorTask.java:884)
at com.pega.pegarules.session.internal.PRSessionProviderImpl.performTargetActionWithLock(PRSessionProviderImpl.java:1192)
at com.pega.pegarules.session.internal.PRSessionProviderImpl.doWithRequestorLocked(PRSessionProviderImpl.java:930)
at com.pega.pegarules.session.internal.PRSessionProviderImpl.doWithRequestorLocked(PRSessionProviderImpl.java:829)
at com.pega.pegarules.session.internal.async.BatchRequestorTask.run(BatchRequestorTask.java:617)
at com.pega.jsr166backport.java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:991)
at com.pega.jsr166backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:532)
at java.lang.Thread.run(Thread.java:662)
Caused by: com.pega.pegarules.pub.generator.RuleNotFoundException: Failed to find a 'RULE-OBJ-ACTIVITY' with the name 'Activity_2' that applies to 'abcd-efgh-ijkl-Work-Classname'. There were 1 rules with this name in the rulebase, but none matched this request. The 1 rules named 'Activity_2' defined in the rulebase are:
1 related to applies-to class 'abcd-efgh-ijkl-Work-Classname', but were defined in rulesets which are not in your rulesetlist: 'OMValidationApp:01-02-98'.
Current RulesetList:
Pega-ProcessCommander:07-10,
Pega-LP-ProcessAndRules:07-10,
Pega-LP-Integration:07-10,
Pega-LP-Reports:07-10,
Pega-LP-SystemSettings:07-10,
Pega-LP-UserInterface:07-10,
Pega-LP-OrgAndSecurity:07-10,
Pega-LP-DataModel:07-10,
Pega-LP-Application:07-10,
Pega-LP:07-10,
Pega-UpdateManager:07-10,
Pega-SecurityVA:07-10,
Pega-Feedback:07-10,
Pega-AutoTest:07-10,
Pega-AppDefinition:07-10,
Pega-ImportExport:07-10,
Pega-LocalizationTools:07-10,
Pega-RuleRefactoring:07-10,
Pega-ProcessArchitect:07-10,
Pega-Portlet:07-10,
Pega-Content:07-10,
Pega-IntegrationArchitect:07-10,
Pega-SystemArchitect:07-10,
Pega-Desktop:07-10,
Pega-EndUserUI:07-10,
Pega-Social:07-10,
Pega-EventProcessing:07-10,
Pega-Reporting:07-10,
Pega-UIDesign:07-10,
Pega-Gadgets:07-10,
Pega-UIEngine:07-10,
Pega-ProcessEngine:07-10,
Pega-SearchEngine:07-10,
Pega-IntegrationEngine:07-10,
Pega-RulesEngine:07-10,
Pega-Engine:07-10,
Pega-ProCom:07-10,
Pega-IntSvcs:07-10,
Pega-WB:07-10,
Pega-RULES:07-10
at com.pega.pegarules.generation.internal.vtable.VirtualRuleTableDispatchImpl.useRuleResolutionToSelectRule(VirtualRuleTableDispatchImpl.java:697)
at com.pega.pegarules.generation.internal.vtable.VirtualRuleTableDispatchImpl.resolveRule(VirtualRuleTableDispatchImpl.java:455)
at com.pega.pegarules.generation.internal.PRGenProviderImpl.get(PRGenProviderImpl.java:586)
at com.pega.pegarules.session.internal.mgmt.Executable.doActivity(Executable.java:3261)
at com.pega.pegarules.session.internal.mgmt.base.ThreadRunner.runActivitiesAlt(ThreadRunner.java:640)
... 12 more
Steps to Reproduce
1. Call an activity - Activity_2 using 'Queue' method from an activity Activity_1.
2. Configure the calling activity Activity_1 in the REST Service.
3. Invoke the Service.
Root Cause
Batch Requestor was unable to get the AccessGroup causing RuleNotFoundException.
Resolution
Usage of the Property-Set method with Param.pzInheritRulesetList = true, just before the Queue Activity_2 step has resolved the issue.
Published January 31, 2016 - Updated October 8, 2020
Have a question? Get answers now.
Visit the Collaboration Center to ask questions, engage in discussions, share ideas, and help others.