新增2于2017年7月25日:bean将下载(jar)文件作为接收器频道上的压缩文件。
概述:
当跨不同的客户端移动时,可能需要一些时间来设置NWD,其中包含开发所需的所有jar文件。否则,有时在启动新开发时,可能需要一些时间才能找到所需的jar文件。这个博客描述了一个通用的方法来为一个文件列表找到jar文件。
解决方案:
这个方法已经在以前的博客中讨论过了,比如这个链接。
但是,类名是硬编码的,我正在考虑创建一个通用的解决方案,云零售,在这个解决方案中,我可以插入一个适配器模块,它将为一个文件列表检索jar文件类。
Bean Name:FindClassPathBean
它不需要任何参数,并且尝试为每一行查找预期为类名的jar文件。
配置:
创建一个ICO/iFlow,其中SOAP发送方和ftp适配器作为接收方。
对于本例,以下是NWDS中出现错误的类列表,因为我们的项目中没有设置jar文件。
删除导入和分号,只获取类名。
此类名列表可用于测试工具。
启动PIMON
服务器:端口/pimon选择Testing选项卡->Send Test Message
在payload中,可以提供我们感兴趣的类列表来查找jar文件。
发送消息,我们就可以得到带有jar位置的日志!
如果我们有一大组文件要处理,它真的很方便。
bean将消息清空,因为我们不想将任何文件写入目标FTP服务器。FTP适配器已配置为忽略空白消息。
从适配器日志中指示文件\u SUC\u EMPTYPAYLOAD指示FTP适配器已接收到空消息。另一方面,企业大数据,我不知道为什么SAP选择了这个神秘的字符串,而不是写一条收到的空消息的文本,并且没有任何内容会被写到终点。
这使我们能够导航这个博客链接中提到的文件路径。
这是github链接,它有EAR文件,我们可以部署到PI服务器,并且可以直接使用。
我的测试是在PO 7.4系统上完成的。
添加2:
在一个注释中提出了下载文件的想法。
第二次修订读取文件并将文件作为压缩文件下载到目标目录中。
输入类名。作为一个测试,返利商城,我把bean本身的类名放进去了。
日志表示正在读取的文件。
日志确认文件已经被写入。
如果我们下载并打开文件,它会显示已经添加的jar文件。
所以使用这个bean,个人云服务器,我们可以显示jar路径并将jar文件作为一个单独的文件下载压缩文件。在内部,快云服务器,它使用一个集合来存储类名,因此一个jar文件只会被添加到zip中一次,即使它对应于多个类。