私の変換をリモートで実行しようとしています。変換には、同じリポジトリからの別の変換を参照して変換Executorステップがあります。資源の輸出でリモート実行されると実行がエラーが記載されていないPentaho DI変換Executorステップによる変換は、リモート実行中に失敗する
エラーのための変換を読み込むことができません、次のメッセージ
で失敗します。 executorステップは、リモート実行で初期化に失敗します。
これはバグですか?
私の変換をリモートで実行しようとしています。変換には、同じリポジトリからの別の変換を参照して変換Executorステップがあります。資源の輸出でリモート実行されると実行がエラーが記載されていないPentaho DI変換Executorステップによる変換は、リモート実行中に失敗する
エラーのための変換を読み込むことができません、次のメッセージ
で失敗します。 executorステップは、リモート実行で初期化に失敗します。
これはバグですか?
変換に間違ったパスが原因である可能性があります。ステップで変換への正しいパスが指定されているかどうか確認してください。
システム変数を使用してパスを設定するのが理想的です。下の画像をチェックしてください:
変数${internal.Transformation.Filename.Directory}/<your ktr file>
は自動的にメイン変換のパスを検出します。正確なパスを与える代わりにこれを使用します。
詳しくはこちらwiki。
希望します。
ご回答ありがとうございます。 実際にリポジトリを名前で使用しています リポジトリ リポジトリはリモートDIサーバにあり、スプーンは常にリポジトリに接続されています。
デバッグで見つかったのは、TransExecutorのステップ 名前とリポジトリ別にリポジトリを参照してチェックしますが、いずれの場合もリポジトリオブジェクトrepはnullです。
refernceによる内部リポジトリは、NPEとリポジトリを名前でスローすると、Repositoryではなくファイルシステム内のktrファイルを検索するため、FileNotFoundExceptionがスローされます。 これはバグであればもっと知る必要があると思います。
今後の参考として、このような回答をあなたの質問の編集として、そして/または既存の回答(扶桑社)のコメントとして追加する必要があります。 – jcadcell
私はちょうど同じ問題を抱えています。私はプレースホルダが親ジョブリポジトリディレクトリに指摘して、絶対パスを使用してそれを固定
だから変換キュータフィールドファイル名は、次のようになります。
[${Internal.Job.Filename.Directory}/my-transformation.ktr][1]
それがローカルに動作しますか? – matthiash