我需要 :
- 1)让用户从他的本地电脑中选择一个文件
- 2) 将该文件上传到 pentaho 服务器
- 3)使用水壶转换处理文件
我尝试在 Pentaho 用户控制台 (PUC) 5.0 中使用 csv 数据源,但发现无法从上传到 PUC 存储库的 .ktr 文件访问它。我还尝试将 csv 文件上传到文件夹,但仍然无法从 .ktr 文件访问它。
我需要 :
我尝试在 Pentaho 用户控制台 (PUC) 5.0 中使用 csv 数据源,但发现无法从上传到 PUC 存储库的 .ktr 文件访问它。我还尝试将 csv 文件上传到文件夹,但仍然无法从 .ktr 文件访问它。
我认为这个要求是有效的:
将 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 文件:
从 ktr 读取此 csv 文件待定...
我希望这有帮助