重要な JavaScript (スクリプト化されたデータ ソース) を含む BIRT のレポートがあります。JavaScript は少し不安定で、リグレッションの疑いがあります。そのため、およびその他の理由から、データを入力し、レポートcreateRunAndRenderTask
を実行し (そしてそのタスクを実行し)、結果のレポートに対していくつかの検証を行う JUnit テストを作成しました。
BIRT エンジンが何らかの例外をスローすると、明らかにこのテストは失敗します。ただし、レポートで JavaScript エラーが発生しても、例外はスローされません。そして、それは気分が良くありません。これを何らかの方法で変更して、BIRT エンジンが JavaScript エラー時に例外をスローするようにすることはできますか?
レポートの作成中に多数の JavaScript エラーが発生したため、これを試しました。スクリプト化されたデータ ソースのタイプミスを考えてみてください。それらはコンソールに吐き出されますが、例外はありません。
例えば:
<method name="open"><![CDATA[count = 0;
this should break]]></method>
これはコンソールに表示されます。
... Fail to execute script in function __bm_OPEN(). Source:
------
" + count = 0;
this should break + "
-----
A BIRT exception occurred. See next exception for more information.
ReferenceError: "this should break" is not defined. (/report/data-sets/script-data-set[@id="9"]/method[@name="open"]#3)
ご提案ありがとうございます。