質問
スクリプト実行時に以下エラーが派生しました。
com.appresso.ds.script.runtime.ComponentFailedException:
[{Mapper名}(変換/基本/マッピング)]の処理に失敗しました。原因:
[java.lang.IllegalStateException: {変数名}に値を設定することができませんでした
(can't check null :/table/row/column[1]/text())]
Mapper内の変数代入処理でエラーが発生しているようなのですが、原因を教えてください。
回答
本エラーの原因ですが、以下マニュアルに記載のパラレルストリーミング処理の仕様制限によるものと思われます。
・パラレルストリーミング処理
- PSPでは、結果データを複数のコンポーネントの入力元に指定できません。
- 変数Mapperで、入力ドキュメントから変数にマッピングしている場合も入力元への指定にあたります。
PSP処理を有効にしているデータフローが接続されている同一のMapper内にて出力データと変数代入を一緒に実装した場合、
同様のエラーが発生する場合があります。
本エラーが発生した場合、以下のいずれかの回避策をお試しください。
- 同一のMapper内入力データを出力データと変数代入に同時に出力しないようにする
変数代入用のMapperを別途配置し、出力データへの出力と変数代入処理を別々のMapperで行ってください。
- 該当のMapperに関連するデータフローからPSPを無効にする
PSPの仕様による事象のため、PSPを無効化していただければ解消されます。
コメント
0件のコメント
記事コメントは受け付けていません。