[rules-users] Firing Specific rules using KBase and StatefulKnowledgeSession

Michael Anstis michael.anstis at gmail.com
Thu Sep 9 06:49:07 EDT 2010


One for your list Wolfgang?

On 9 September 2010 11:07, Swindells, Thomas <TSwindells at nds.com> wrote:

> Looks like the problem is that there are two agenda filter classes:
> org.drools.runtime.rule.AgendaFilter and org.drools.spi.AgendaFilter.
>
> odrr.AgendaFilter is what is required by the StatefulKnowledgeSession, this
> then wraps it in a class to convert it to an ods.AgendaFilter which is what
> the internal classes use.
> RuleNameEndsWithAgendaFilter seems to implement ods.AgendaFilter and not
> odrr.AgendaFilter which is what I'd expect - this is possibly a bug.
> Your options are to create a simple wrapper which converts an
> ods.AgendaFilter to an odrr AgendaFilter so that when you pass it into the
> knowledge session that can then wrap it back to an odsAF. Alternatively you
> could just copy or extend RuleNameEndsWithAgendaFilter and give it the
> 'correct' interface.
>
> Thomas
>
> > -----Original Message-----
> > From: rules-users-bounces at lists.jboss.org [mailto:rules-users-
> > bounces at lists.jboss.org] On Behalf Of Vignesh
> > Sent: 09 September 2010 10:32
> > To: rules-users at lists.jboss.org
> > Subject: [rules-users] Firing Specific rules using KBase and
> > StatefulKnowledgeSession
> >
> >
> > Hi,
> >
> > We are not able to fire specific rules using KBase and
> > StatefulKnowledgeSession,
> >
> > //Code snippet
> >
> > StatefulKnowledgeSession ksession = kbase.newStatefulKnowledgeSession();
> > ksession.fireAllRules(new RuleNameEndsWithAgendaFilter("test"));
> >
> > If we use the method directly we are getting the below compile time
> error,
> > The method fireAllRules(int) in the type StatefulRuleSession is not
> > applicable for the arguments (RuleNameEndsWithAgendaFilter)
> >
> > and when we cast it and used the same by
> > ksession.fireAllRules((AgendaFilter) new
> > RuleNameEndsWithAgendaFilter("test")); but getting the below exception,
> > java.lang.ClassCastException:
> org.drools.base.RuleNameEndsWithAgendaFilter
> >
> > Same thing we are able to achieve using RuleBase and WorkingMemory as
> below,
> >
> > RuleBase ruleBase = agent.getRuleBase();
> > WorkingMemory wrkMemory = ruleBase.newStatefulSession();
> > int i=wrkMemory.fireAllRules(new RuleNameEndsWithAgendaFilter("read"));
> >
> > Any pointers on how to use this functionality for firing specific rules
> > using KBase and StatefulKnowledgeSession, by filtering out rules based on
> > rule names. Please help in this regard.
> >
> > Thanks,
> > Vignesh
> > --
> > View this message in context: http://drools-java-rules-
> > engine.46999.n3.nabble.com/Firing-Specific-rules-using-KBase-and-
> > StatefulKnowledgeSession-tp1444889p1444889.html
> > Sent from the Drools - User mailing list archive at Nabble.com.
> > _______________________________________________
> > rules-users mailing list
> > rules-users at lists.jboss.org
> > https://lists.jboss.org/mailman/listinfo/rules-users
>
>
>
> **************************************************************************************
> This message is confidential and intended only for the addressee. If you
> have received this message in error, please immediately notify the
> postmaster at nds.com and delete it from your system as well as any copies.
> The content of e-mails as well as traffic data may be monitored by NDS for
> employment and security purposes. To protect the environment please do not
> print this e-mail unless necessary.
>
> NDS Limited. Registered Office: One London Road, Staines, Middlesex, TW18
> 4EX, United Kingdom. A company registered in England and Wales. Registered
> no. 3080780. VAT no. GB 603 8808 40-00
>
> **************************************************************************************
>
> _______________________________________________
> rules-users mailing list
> rules-users at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/rules-users
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/rules-users/attachments/20100909/af9036dc/attachment.html 


More information about the rules-users mailing list