我想通過代碼定義Pentaho Kettle(ktr)轉換。我想添加到文本文件輸入步驟:http://wiki.pentaho.com/display/EAI/Text+File+Input轉換。我不知道如何做到這一點(請注意,我想在自定義Java應用程序中實現結果,而不是使用標準的Spoon GUI)。我認爲我應該使用TextFileInputMeta
類,但是當我嘗試定義文件名時,轉換不再起作用(它在勺子中似乎是空的)。Pentaho SDK,如何定義文本文件輸入
這是我正在使用的代碼。我覺得第三行有一些錯誤:
PluginRegistry registry = PluginRegistry.getInstance();
TextFileInputMeta fileInMeta = new TextFileInputMeta();
fileInMeta.setFileName(new String[] {myFileName});
String fileInPluginId = registry.getPluginId(StepPluginType.class, fileInMeta);
StepMeta fileInStepMeta = new StepMeta(fileInPluginId, myStepName, fileInMeta);
fileInStepMeta.setDraw(true);
fileInStepMeta.setLocation(100, 200);
transAWMMeta.addStep(fileInStepMeta);
謝謝。不幸的是,我不能從文件加載轉換,我必須從頭開始創建它。您發佈的關於「TextFileInputMeta」的代碼給了我關於不推薦使用的類的警告(如「TextFileInputField」),我不知道如何解決。無論如何,現在我正在使用「CsvInputMeta」。它效果更好。但我應該以類似於Spoon中的「Get fields」按鈕的方式加載字段。我怎樣才能獲得這個? – ufo
@ufo,在6.0中,TextFileInput步驟已被棄用,並推薦一個全新的(重構的) - https://github.com/pentaho/pentaho-kettle/blob/master/engine/src/org/pentaho/di/ trans/steps/fileinput/text/TextFileInput.java。 如果你在這裏發佈你的代碼,我可以嘗試幫助你。沒有看到你的麻煩在哪裏它真的很難猜測:) –