[rules-users] Rules in App Server Error

Mauricio Salatino salaboy at gmail.com
Fri Dec 3 15:36:01 EST 2010


that's weird.. you are using a varible that you never define in the Right
Hand Side.
$severity was never defined. In the RHS remember that you can write pure
java. So if you want a variable called severity you should declare it as:
String severity = $patient.

medicalHistoryBleedingRiskFactors.gastritis;

Greetings.


2010/12/3 John McKim <jmckim at comcast.net>

> I'm having a problem that I can't seem to figure out.  I have rules that
> run in a client program with no problem - about 125 rules in all.  When I
> try to run these same rules in an App Server (GlassFish) I get several rules
> (about 5) that have an error on initialization.  Here is the error message
> followed by the rule.
>
> *******************************************
> SEVERE: java.lang.RuntimeException: Unable to build expression for
> 'consequence': [Error: not a statement, or badly formed structure]
> [Near : {... $severity;
>                    ....}]
>                      ^
> [Line: 1, Column: 233] '        $severity =
> $patient.medicalHistoryBleedingRiskFactors.gastritis;
>         $weight = 5;
>         $factor = .1;
>         $tempScore = $factor;
>         $tempScore = $tempScore * $weight;
>         $tempScore = $tempScore * $severity;
>         // Now add this risk score to the accumlated risk score
>         $patient.score = $patient.score + $tempScore;
>         $patient.problem = new
> String("MedicalHistoryBleedingRiskFactors.gastritis");
> ' : [Rule name='medicalHistoryBleedingRiskFactors.gastritis rule']
> **********************************************
> rule "medicalHistoryBleedingRiskFactors.gastritis rule"
> salience 20
>     when
>         # find patients who indicated that they have
> MedicalHistoryBleedingRiskFactors: gastritis
>         $patient : Patient(medicalHistoryBleedingRiskFactors.gastritis > 0)
>
>     then
>         $severity = $patient.medicalHistoryBleedingRiskFactors.gastritis;
>         $weight = 5;
>         $factor = .1;
>         $tempScore = $factor;
>         $tempScore = $tempScore * $weight;
>         $tempScore = $tempScore * $severity;
>         # Now add this risk score to the accumlated risk score
>         $patient.score = $patient.score + $tempScore;
>         $patient.problem = new
> String("MedicalHistoryBleedingRiskFactors.gastritis");
> end
>
> As I said, this rule runs fine in a client app – when I run the same rules
> in app server I get an error.  This is only happening in 5 out of 125 rules,
> and only during initialization using
> builder.add(ResourceFactory.newClassPathResource(file).
> Thanks.
>
>
>
> _______________________________________________
> 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/20101203/aa669787/attachment.html 


More information about the rules-users mailing list