I'm reviewing JBoss Rules (Drools) for an application I'm starting to build. It
appears that the only way to assert facts is to use the insert(Object) method where the
object is a bean using the proper naming conventions for it's properties. There also
appears to be a way to use arbitrary objects using globals but do these end up in the fact
base? It's disturbing to me that I have to create a bunch of classes whose sole
purpose in life is to support the rule base. This is similar to using java server pages
and having to create a bunch of classes just to support each page. That's why I
don't use java server pages and use xsl transformations instead. I want to use my xml
jdom document to represent my data and not have to create a bunch of beans. I can't
seem to find anything in the api where I can assert facts without creating my own custom
classes. There's no standard Fact class?
I've been also experimenting with Jess and it provides an easy way for me to do this.
I just iterate through my jdom document and create Fact objects and assert them. I can
then execute the rules and then iterate through the updated fact base using
engine.listFacts() and update my jdom document. It couldn't be easier or more natural.
Is there an analogous way to do this in Drools?
Thank you very much.