如何将文件上传到Pentaho用户控制台服务器?

时间:2015-06-23 17:21:45

标签: pentaho kettle pentaho-ctools

我需要:

  • 1)让用户从他的本地电脑中选择一个文件
  • 2)将该文件上传到pentaho服务器
  • 3)使用水壶转换处理文件

我尝试使用Pentaho用户控制台(PUC)5.0中的csv数据源,但发现无法从上传到PUC存储库的.ktr文件访问它。我还尝试将csv文件上传到文件夹,但仍然无法从.ktr文件访问它。

1 个答案:

答案 0 :(得分:0)

我认为这个要求是有效的:

  

将csv数据文件和.ktr文件上传到PUC文件夹。 .ktr应该能够在从PUC执行时读取上传的csv文件

想象一个简单的用户,带有csv。他能使用wincsp,filezilla或其他ftp工具将csv文件上传到linux主机吗?

我们需要为用户提供一个简单的上传功能,所以经过几个研究时间(pentaho源代码)没有一行Pentaho文档,我发现了这个测试:

https://github.com/pentaho/pentaho-platform/blob/master/extensions/src/test/java/org/pentaho/platform/plugin/services/importer/PlatformImporterTest.java向我展示了mimetype列表应该存在于某个地方。

所以在用 grep 命令搜索所有pentaho文件夹中的一些单词后,我找到了这个文件:

/my_apps/pentaho-server-ce-7.1.0.0-12/pentaho-server/pentaho-solutions/system/ImportHandlerMimeTypeDefinitions.xml

凭借一些直觉,我添加了这个xml

<ImportHandler class="org.pentaho.platform.plugin.services.importer.RepositoryFileImportFileHandler">
  <MimeTypeDefinitions>
    <MimeTypeDefinition mimeType="text/plain" >
      <extension>csv</extension>
    </MimeTypeDefinition>
  </MimeTypeDefinitions>
</ImportHandler>

在文件的底部:

<tns:ImportHandlerMimeTypeDefinitions xmlns:tns="http://www.pentaho.com/schema/" .....
   <ImportHandler ../>
   <ImportHandler ../>
   <!-- PUT CSV CONFIG HERE -->    
</tns:ImportHandlerMimeTypeDefinitions>

最后,我重新启动了 pentaho-server-ce-7.1.0.0-12 服务器,我可以通过以下步骤上传我的csv文件:

enter image description here

  

从ktr读取此csv文件正在等待......

我希望这会有所帮助