Question

In the rule studio BOM editor , there is BOM to XOM mapping window and it asks for execution name and extender name. I can write java code in a separate project and import it as BOM. So what is the purpose of this extender mechanism ? As always IBM doc says how to do it. But doesn't tell why !

Was it helpful?

Solution


As far as I remember the first displayed is execution:
It is used when you create a "Virtual Member" meaning in Ilog terminology: a method or attribute or class which doesn't rely on a XOM.
Remember that you can create an empty BOM or you can add a method or attribute in a BOM class based on a XOM
The easiest example is "age" NO database will ever store such field but you could had a piece a logic in a "virtual attribute or method" in order to do the comparison between Date of birth and today.

If you create a class from scratch (not an attribute or method) a kind of "Virtual Object" you still need to tell JRules how to consider this Object at runtime.

So you use this field to tell JRules, here is a virtual class based on no XOM but at execution time use it as an java.lang.Object

I never used this field with any other Class than java.lang.Object

Does it make sense?

Second one is really like "extends" in pure java. Never used it... No need.

Hope it helps

OTHER TIPS

To complete Damien answer : The "execution name" field is also used when your bom class don't have the same name as the xom class. From the Jrules 7.0.2 doc :

For example, in your BOM, there is a business class named ShoppingCart. You need to map this business class to an execution class called Cart in the XOM. To do the mapping, select the class ShoppingCart, and in the BOM Editor specify Cart as the Execution name.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top