问题标签 [apache-commons-vfs]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - 配置pentaho的hdfs-vfs来获取hdfs-site.xml
刚开始使用Pentaho的HDFS VFS,对这个项目了解不多。我正在尝试从外部位置读取我的 Hadoop 配置文件。这似乎适用于除hdfs-site.xml之外的所有文件。尝试通过 Pentaho HDFS VFS 项目与 HDFS 通信时,VFS 层出现故障。我的直觉告诉我 pentaho 正在通过一些环境变量或其他外部指针读取这个文件,但我似乎无法在他们的源代码中找到它。当我手动将 hdfs-site.xml 文件放入已编译的war文件中时,一切正常,但这对我来说还不够,因为我需要将此文件放在外部位置,以便其他进程可以更改它。
以前有人处理过这个问题吗?有人可以让我知道如何告诉 pentaho 从哪里获取这个文件吗?
谢谢
java - 如何配置 Commons VFS 调用 http 的 GET 方法
我正在调用一个支持 get 调用来下载文件的 API。但是当我调用 FileSystemManager 的 resolveFile 方法时,它默认调用 HEAD 方法。谁能告诉我如何在 Commons VFS 中调用 HTTP GET ?像我们在 HttpURLConnection 中那样设置请求方法的某种方式?
java - Java SFTP specify absolute path
I have used this code for SFTP Java Upload
source of the code is: http://www.mysamplecode.com/2013/06/sftp-apache-commons-file-download.html
I need to specify the path so the ftp does not log into
/root/CHOSENPATH
when connected to server but to
/CHOSENPATH
when using this part of code:
Is there a way how to specify the absolute path instead of relative?
Thank you in advance.
java - 使用 Apache Commons VFS2 检查文件是否存在
我想问一下是否有办法仅使用 Apache Commons 检查文件夹中是否已存在文件。
我有上传到 SFTP 文件夹的方法,但只要该方法运行,它就会覆盖当前文件。该方法设置为每 5 分钟运行一次。我需要一个代码来创建和 if 语句,它检查文件是否已经不在 SFTP 位置,然后,如果没有,则执行我的复制方法,如果有文件,则跳过它。
我的复制方法看起来像这样
谢谢你的帮助。
java - 有没有简单的方法来检查 SFTP 服务器是否有变化?
我的目标是轮询 SFTP 服务器以进行更改。我的第一个想法是检查目录中的文件数量是否发生了变化。然后可能对目录中的更改进行一些额外的检查。
目前我正在使用以下内容:
这是使用 apache commons vfs2 2.2.0。它工作“很好”,但是当服务器有太多文件时,只需要几分钟才能获得计数(目前,获得大约 10k 文件的服务器的计数需要 2 分钟以上)。有什么方法可以更快地获得服务器上的计数或其他更改?
jakarta-ee - 用于文件存储的 J2EE 和虚拟文件系统
我现在正在努力解决这个问题
“如何在 J2EE Web 应用程序的文件系统中存储一些文件”
据说,出于便携性的原因,至少不推荐访问 FS。
我想知道还有哪些其他可能性,以使其更便携,同时又不会造成沉重的性能。
我可以想到以下方法
- 直接使用 FS(临时文件、webapp 文件夹等)不是真正可移植的 - 也许是一些用户目录
- 使用一些虚拟 FS(Apache Commons VFS) - 增加切换 FS impl 的可能性。
- 在数据库中存储文件 - 对于 Lucene 索引文件,它失去意义
- JCA - 它过于复杂,我需要为每个使用的 FS 提供适配器
- JCR - 使用它是个好主意吗(Apache Jackrabbit)
.properties 文件、lucene 索引、用户文件、用户图片通常存放在哪里?特别是如果您在开发管道中为您的应用程序使用不同的环境(Openshift、Heroku、Web 容器、应用程序服务器)
java - org.apache.commons.vfs2.FileSystemException:无法关闭输出流
我正在使用 VFS 2.0 为我的应用程序实现 SFTP。我有一个线程,它实际上拾取文件并执行 SFTP。98% 的时间它都在工作。但我观察到很少有 SFTP 失败的情况,但有以下异常..
请提出上述异常的可能原因。
groovy - 使用来自 groovy 的 commons-vfs 同步 ant 任务
尝试使用 Groovy 中的 commons-vfs 同步 ant 任务。解决了大部分问题,但仍然存在一些问题。这是我的常规脚本:
此时我唯一缺少的是如何指定本地目录和文件。这个例子给了我这个堆栈跟踪:
java - mac os java 连接到网络驱动器
我目前正在使用 Mac Yosemite。我必须将文件从一个文件夹复制到网络驱动器上的另一个文件夹。该代码在 Windows 7 中运行良好,但相同的代码在 Mac 中无法运行。这些文件位于 Windows Server 上。所以,通过网上的一些研究,我发现我们可以使用 Apache Commons VFS、FileManagerSystem 来访问网络文件/文件夹。
有没有人可以分享代码?
java - Java集群,只运行一次任务
我们有一个 java 进程,它使用 apache commons vfs 监听文件系统上的目录 X。每当一个新文件被导出到这个目录时,我们的流程就会启动。我们首先将文件重命名为 filename.processing 并解析文件名,从文件中获取一些信息并插入到表中,然后将此文件发送到文档管理系统. 这是每个集群的单线程应用程序。现在考虑在集群环境中运行,我们有 5 个服务器。所以 5 个不同的虚拟机试图访问同一个文件。整个实现是基于在给定时间只有一个进程可以将文件重命名为 .processing ,因为操作系统不允许多个进程同时修改文件。一旦一个集群得到持有并将文件重命名为.processing,其他集群'
一年多以来一直运行良好,但刚才我们发现很少有重复项。看起来多个集群都掌握了文件,在这种情况下,集群 a、b、c 已经获得了文件 f.pdf 的访问权限,并且他们同时将其重命名为 f.pdf.processing,(我仍然感到困惑操作系统如何允许同时修改文件)。作为这些的结果,集群 a、b、c 他们处理了文件并将其发送到文档管理系统。所以现在有3个重复文件。
所以简而言之,我正在看的是,在集群环境中只运行一次任务的方法。我还希望它具有故障转移机制,这样如果集群出现问题,另一个集群会接手任务。我们不想在盒子上设置环境变量,比如 master=true,因为这会将它限制为只有一个集群并且不会处理故障转移。
任何形式的帮助表示赞赏。