我是Apache Camel的新手。我想从远程文件位置(即共享位置路径)中选择一个文件。
将映射的远程计算机共享位置路径映射为网络驱动器,使用的文件组件如下所示
<camel:route>
<camel:from uri="file:{{config.fileloc}}?fileName={{filename}}.txt"/>
<to uri="activemq:queue:{{activemq.outqueue}}" />
</camel:route>
文件名= DataMoveCommand config.fileloc = // Server / FileLoc
有人请帮我解决这个问题。请给我一些关于camel-JCFIS的例子和camel-JCFIS的目的
答案 0 :(得分:1)
如果在Windows上运行Camel应用程序,那么您应该能够访问UNC路径上的文件而无需其他库,如jCIFS。但是,在Java中,不需要为UNC路径添加两个反斜杠,而是需要提供四个(以避免相应的后续反斜杠)。请参阅file javadoc。因此,//Server/FileLoc
不是\\\\Server/FileLoc
,而是{{1}}。
如果您运行的操作系统没有CIFS的本机支持,或者共享不允许匿名访问,那么您需要一个像jCIFS这样的库来实现它。 Camel JCIFS compoment page有关于如何使用它作为文件组件
的替代品的示例