[rules-users] Drools 5 setGlobal

Mauricio Salatino salaboy at gmail.com
Tue Jun 22 07:47:51 EDT 2010


yes you are right.. did you try removing the insert cmd from the second code
snippet?
just to have the same scenario?
The first code should fail as the second. With the message Unexpected global
[test2]

On Tue, Jun 22, 2010 at 8:40 AM, Samuli Saarinen <samuli.saarinen at remion.com
> wrote:

> Actually I am trying to set an unexistent variable (test2) in both
> snippets. But for some reason only the second one produces the exception.
>
> Samuli
>
> Salaboy wrote:
> > Well, in the second code snippet you are trying to set an unexistent
> > variable called test2. For setting a global variable you need to
> > define it first in the drl file. Greetings!
> >
> > - CTO @ http://www.plugtree.com
> > - MyJourney @ http://salaboy.wordpress.com
> > - Co-Founder @ http://www.jbug.com.ar
> > - Mauricio "Salaboy" Salatino -
> >
> > On Jun 22, 2010, at 4:32, Samuli Saarinen <samuli.saarinen at remion.com>
> > wrote:
> >
> >> Hello,
> >>
> >> I'm new to drools and have problems with globals or with the different
> >> behaviour of drools depending on how the globals are specified.
> >>
> >> I have the following simple rule:
> >>
> >> global String test
> >>
> >> rule "Global"
> >>   when
> >>   then
> >>     System.out.println(test);
> >> end
> >>
> >> If i run the rule with:
> >>
> >> KnowledgeBase kb = getKnowledgeBase("global.drl");
> >> StatelessKnowledgeSession ses = kb.newStatelessKnowledgeSession();
> >> ses.setGlobal("test2", "foo");
> >> ses.execute("");
> >>
> >> I get the expected result of null printed
> >>
> >> but if I use commands:
> >>
> >> KnowledgeBase kb = getKnowledgeBase("global.drl");
> >> StatelessKnowledgeSession ses = kb.newStatelessKnowledgeSession();
> >> List<Command<?>> cmds = new ArrayList<Command<?>>();
> >> cmds.add(CommandFactory.newSetGlobal("test2", "bar"));
> >> cmds.add(CommandFactory.newInsert(""));
> >> ses.execute(CommandFactory.newBatchExecution(cmds));
> >>
> >> I get java.lang.RuntimeException: Unexpected global [test2]
> >>
> >> Why is the behaviour different and which one is correct?
> >>
> >> Regards,
> >>
> >> Samuli
> >>
> >>
> >> --
> >> Remion Oy           Etävalvontajärjestelmät liiketoiminnan
> >> Samuli Saarinen           tehostamiseen
> >> gsm +358 (0)50 3560075
> >> fax +358 (0)3 2125064       www.remion.com
> >> _______________________________________________
> >> rules-users mailing list
> >> rules-users at lists.jboss.org
> >> https://lists.jboss.org/mailman/listinfo/rules-users
> >
> > _______________________________________________
> > rules-users mailing list
> > rules-users at lists.jboss.org
> > https://lists.jboss.org/mailman/listinfo/rules-users
> >
> > --
> > STOP Virus, STOP SPAM, SAVE Bandwidth!
> > http://www.safentrix.com/adlink?cid=0
> > -
>
>
>
> --
> Remion Oy           Etävalvontajärjestelmät liiketoiminnan
> Samuli Saarinen           tehostamiseen
> gsm +358 (0)50 3560075
> fax +358 (0)3 2125064       www.remion.com
> _______________________________________________
> rules-users mailing list
> rules-users at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/rules-users
>



-- 
- CTO @ http://www.plugtree.com
- MyJourney @ http://salaboy.wordpress.com
- Co-Founder @ http://www.jbug.com.ar

- Salatino "Salaboy" Mauricio -
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/rules-users/attachments/20100622/51e68c05/attachment.html 


More information about the rules-users mailing list