Why am I getting a RuleNotFound exception for an activity that exists?
I am seeing this exception in the Log, But i see that Activity exists in the rule base - on the developer portal and seach for this rule - how to make sure - it finds the activity always?
com.pega.pegarules.pub.generator.RuleNotFoundException: Failed to find a 'RULE-OBJ-ACTIVITY' with the name 'INITIALPROFILESETUP' that applies to 'Code-Security'; no rules with this name were found in the rulebase.
We are using Pega 7.1.5.
***Updated by moderator: Marissa to close post***
This post has been archived for educational purposes. Contents and links will no longer be updated. If you have the same/similar question, please write a new post.
Is this intermittent or every time ? Are you able to capture a trace of it ?
Are you using an alternative authentication scheme such as LDAP ?
I’m thinking maybe sometimes you’re getting the wrong access group. Can you insert a diagnostic printout of which access group is being used to see whether the issue correlates with a variation in access group ?
One theory: Efficiency-pooled-and-reused requestors, and hence you get a different access group according to whether you re-use a requestor or use a brand new one.
Thank you Pradeep, I will do these steps and see whats going on! The scenarios when it happens is - with JMS MDB Listener and when we restart the App Server - with Messages in the Queue. I was thinking - Listener is trying to run before Pega is ready as Listeners are tied with App Server than with Pega System. Thats my assumption - i may be wrong. When Pega starts-up fully - i could see Messages get processed. Problem is how long will it take before Listener able to get required classes/rules. Is there a way we can delay the Listener start as it is based on OnMessage() method?
We will then need to review the PegaRULES log which contains the application start logging and the listener error. If you can raise a SR, we can then address this issue by assigning to a support engineer
Typically rules at Code-Security are executed for user authentication and authorization. Now the question is as the user is still not authenticated/authorized, then against which ruleset stack (which will be used by rule resolution to find out rules) pega will search for rules. Pega manages this by using RPC:Unauthenticated access group. Check which application this access group is pointing to to and if that application contains rulesets that contains 'INITIALPROFILESETUP' that applies to 'Code-Security';
The listener scenario you mentioned, that might be true