Hi,
 
Anyone knows how to catch the exception when firing the rules?
 
I wrapped the session.fireAllRules() method using try...catch, however it doesn't work: when someone wrote bad code in the rule's action part, the Exception will be thrown and printed to the stderr, and this will make the rule engine stop working -- the try...catch outside doesn't help anything.
 
If  the exception thrown from the rule's action part can be caught externally, the system can be protected from interrupting Exception.

try {
        _log.debug("Firing rules in : " + getName());

        session.fireAllRules();

} catch (Exception e) {
        _log.info("Error when firing rules: ", e);
}

Thanks,
Yang