Still, accessing the class field com.sample.Server.Message in eval() in this way is almost certainly not a good approach.
But note that
dialect "mvel"
may be written preceding all the rules it should apply to.
-W
Try adding 'dialect "mvel"' (no single quotes) after the rule name to the top of each of the rules. I have seen this error before and doing this resolved the issue.
>hello,everyone!I wrote a rule with Drools,but the error told me that the field Server.Message is not visible, I can't find how it happens. Please
>help me, I am almost exhausted with it. thank you.
>the rules are as follows:
>
>package com.sample
>import com.sample.Server;
>
>rule "system will execute 'tc' command"
> when
> eval(Server.Message>8388608)
> then
> System.out.println("The network is so crowd that it needs repairing.");
> Runtime.getRuntime().exec("tc");#execute the "tc" command end
>
>rule "caution"
> when
> eval(Server.Message==8388608)
> then
> System.out.println("caution!The network maybe will get blocked very soon."); end
>
>rule "fluent network"
> when
> eval(Server.Message<8388608)#conditions
> then
> System.out.println("the current network is very good");
> #actions
>end
_______________________________________________
rules-users mailing list
rules-users@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users