OK, I imported your JAR and created a rule as shown below. The Guided Rule Editor had the option to select the enums for Country.
Theonly issue I had was with "Destination" itself - as it should be a lower case "d". Drools Compiler did report an error that is was ..."Unable to create Field Extractor for 'Destination'Field/method 'destination' not found for class 'com.sample.GenericDataObject'". I suspect if you change the field name to "destination" it would work OK. This was with the latest code @master in github. 1.|package org.anstis.p1;2.|3.|import java.lang.Number;4.|import com.sample.GenericDataObject;5.|import com.sample.GenericDataObject.Airline;6.|import com.sample.GenericDataObject.Country;7.|import com.sample.Result;8.|9.|rule "r1"10.| dialect "mvel"11.| when12.| GenericDataObject( Destination == Country.Egypt )13.| then14.|end On 10 April 2014 12:58, Leonard93 <leonardlinde...@hotmail.com> wrote: > Hello everyone, I have a small question/problem. > > I have created a class (POJO) in Eclipse and I want to be able to write > rules over this class in the Drools Workbench, thus I exported the class > and > the classes it depends on (1 other class) to a Jar and imported it in the > Drools workbench. > > Now what I did next is I added the jar dependency to my workbench project, > created a new datamodel and set its super class to the external class from > the jar and left the rest empty. > > When I then try to use this datamodel in a guided rule or anything I can > access the variables defined in the external class fine when using the rule > editor. But when I save I get various compiler errors. > > Currently I tried to make a rule template and I got these errors (I am > using > the standard example project to test it out): > > Unable to create Field Extractor for *'Destination'Field/method > 'destination'* not found for class '*org.mortgages.Test' * > > Unable to Analyse Expression *Destination == > GenericDataObject$Country.Germany*: [Error: unable to resolve method using > strict-mode: *org.mortgages.Test.GenericDataObject$Country()]* [Near : > {...* > Destination == GenericDataObject$Country.Germ ....}]* ^ [Line: 9, Column: > 2] > > > The class from the jar looks like this: > public class GenericDataObject { > > public enum Country > { > Egypt, > Germany, > Turkey, > France, > Unknown > } > > public GenericDataObject() > { > result = new Result(); > } > > public Result result; > public Country Destination; > > public void setDiscount(int amount) > { > result.discount = amount; > } > } > > public class Result > { > public int discount; > > public Result() > { > discount = 0; > } > } > > > > -- > View this message in context: > http://drools.46999.n3.nabble.com/External-Jar-Pojo-in-Drools-Workbench-tp4029190.html > Sent from the Drools: User forum mailing list archive at Nabble.com. > _______________________________________________ > rules-users mailing list > rules-users@lists.jboss.org > https://lists.jboss.org/mailman/listinfo/rules-users >
_______________________________________________ rules-users mailing list rules-users@lists.jboss.org https://lists.jboss.org/mailman/listinfo/rules-users