I get a stack trace with the error message “Error during execution” or “Called method threw an exception.” Whats going on?
While Jess was running, it called a Java method that threw an exception other than JessException. Because Jess’s methods are declared to only throw JessException, Jess had to wrap the foreign exception inside a JessException and rethrow it. Thus the exception you’re looking at is just a wrapper for the real problem exception. The JessException class has a method getCause which returns non-null when a particular JessException is a wrapper for a foreign exception. JessException.getCause() will return the real exception that was thrown. Your JessException handlers should always check getCause(); if your handler simply displays a thrown exception, then it should display the return value of getCause(), too.