如何使用 apache Camel 从共享路径位置(远程计算机位置)轮询文件

Aji*_*yan 3 apache-camel

我是阿帕奇骆驼的新手。我想从远程文件位置(即共享位置路径)选择一个文件。

将远程计算机共享位置路径映射为网络驱动器并使用文件组件,如下所示

<camel:route> 
                        <camel:from uri="file:{{config.fileloc}}?fileName={{filename}}.txt"/> 
                        <to uri="activemq:queue:{{activemq.outqueue}}" /> 
</camel:route> 
Run Code Online (Sandbox Code Playgroud)

filename=DataMoveCommand config.fileloc = //服务器/FileLoc

有人请帮我解决这个问题。请提供一些有关camel-JCFIS 的示例以及camel-JCFIS 的目的

Ral*_*alf 6

如果您在 Windows 上运行 Camel 应用程序,那么您应该能够访问 UNC 路径上的文件,而无需使用 jCIFS 等其他库。但是,在 Java 中,您需要提供四个反斜杠(以转义后面相应的反斜杠),而不是在 UNC 路径前添加两个反斜杠。请参阅文件 javadoc。所以//Server/FileLoc你的路径应该是\\\\Server/FileLoc.

如果您运行的操作系统没有对CIFS 的本机支持,或者共享不允许匿名访问,那么您需要一个像 jCIFS 这样的库来实现它。Camel JCIFS 组件页面提供了有关如何使用它来替换文件组件的示例