-Summary:
Fix bugzilla bug 124597 Error message pop
up which from length of JS-_expression_ is error.
-Bugzilla Bug (s) Resolved:
Bugzilla
bug 124597
-Description:
Because
Rhino sometimes catch the exception generated inside its engine and wrap it to
an “Undefined” object, information will lost during this process. To
avoid that, we wrap all exceptions thrown out in JSRowObject.get() method to an
“DataExceptionWrapper” so that after we get a value from Rhino, we
can then distinct it from a valid return value or an exception by verify its
class type.
In
original implementation we only exam the return value from Rhino in
ScriptEvalUtil class, this however cannot cover all the values returned by
Rhino. Say, Rhino also pass values to ResultIterator.
The
examination of return value from Rhino is now added to ResultIterator so that
the exception can be thrown correctly.
-Tests Description:
N/A
-Files Edited:
"/org.eclipse.birt.data/test/org/eclipse/birt/data/engine/api/MultiplePassTest.java"
"/org.eclipse.birt.data/test/org/eclipse/birt/data/engine/api/ComputedColumnTest.java"
"/org.eclipse.birt.data/src/org/eclipse/birt/data/engine/impl/ResultIterator.java"
"/org.eclipse.birt.data/src/org/eclipse/birt/data/engine/script/DataExceptionMocker.java"
"/org.eclipse.birt.data/test/org/eclipse/birt/data/engine/executor/cache/golden/CachedMultiplePassTest.testMixedFiltering.txt"
"/org.eclipse.birt.data/test/org/eclipse/birt/data/engine/api/golden/MultiplePassTest.testMixedFiltering.txt"
- Notes to Build Team:
- Notes to Developers:
- Notes to QA:
- Notes to
Documentation: