我正在使用Mule文件连接器从共享位置读取文件。共享位置和我的部署环境都是基于Windows的。将部署环境中的共享位置映射为J:/驱动器,并使用目录J:/ test。
我可以从Windows资源管理器以及任何浏览器浏览此目录。但在部署期间,它会抛出错误。
IOException: Path: J:/test exists but isn't a directory
注意:任何用户都可以使用目录权限。不应该是许可问题。
如果我使用任何本地目录,如C:/ test,它的工作正常。
答案 0 :(得分:0)
很可能是您的问题是由于mule运行时正在执行的安全上下文。尝试在用户与Windows服务帐户下启动运行时。
答案 1 :(得分:0)
您正在某个ID下运行Mule运行时。此特定框上的此ID无权访问此文件夹。提供对此ID的访问权限,或使用具有此类访问权限的其他ID。
答案 2 :(得分:0)
使用Mule的文件连接器时,这种用例是一种常见的误解。
File Connector州的官方文件:
文件连接器仅支持使用与正在运行的应用程序相同的物理系统上的文件。它不通过网络连接远程传输文件。唯一的例外是操作系统透明地将远程连接映射到本地目录。
根据我的经验,文件连接器不支持使用 Windows网络共享(SMB)和 NFS 系统。
解决方案是通过面向网络的协议访问数据 - 例如。 SFTP 或 JMS 。 Mule包含两者的专用连接器。