Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migration of unmigrated content due to installation of a new plugin

A new feature as of BI Platform 3.6 is template error pages. There used to be no easy way to configure an error page resulting from an action sequence execution from the ViewAction servlet. We used to direct customers to create their own (Java code) MessageFormatter class if they want to customize the way the error appears to end users. This is overkill for simple customization and happily this is no longer the case.  The error used to be ugly, plain and quite uniformative. The uninformative messages "Action Sequence Failed" is affectionately known as the SBC, or "something broke cap'n" error. As of 3.6 you no longer are stuck with the SBC error when something goes wrong with your action sequence!  You ..and you can completely customize the way users see xaction errors using plain old html.

...

Here is an example of an action sequence failure as depicted in the log file:. Like the html output, the messages displayed can be internationalized through the "MessageFormatter" message bundle (see the message starting with "LOG"). However, the data printed in the log is not as easily customizable. The PentahoMessenger.java class (Java code) is responsible for the content of the error log message.

No Format
| Error Time: Tuesday, November 3, 2009 4:43:47 PM EST
| Session ID: joe
| Instance Id: f77d2238-c8c1-11de-92b0-3dd9e4293f91
| Action Sequence: BurstSales.xaction
| Execution Stack:
EXECUTING ACTION: Email (EmailComponent)
	in IF STATEMENT: queryResult.getRowCount()>0
	in LOOP ON: employeeList
| Action Class: EmailComponent
| Action Desc: Email
| Loop Index: N/A
Stack Trace:org.pentaho.platform.api.engine.ActionValidationException: RuntimeContext.ERROR_0035 - Action validation failed.
	at org.pentaho.platform.engine.services.runtime.RuntimeContext.validateComponents(RuntimeContext.java:573)
	at org.pentaho.platform.engine.services.runtime.RuntimeContext.validateComponents(RuntimeContext.java:521)