spring-集成:如何删除文件?
spring-integration : how to delete a file?
我正在开发一个简单的 spring 集成项目,该项目选择一些文件(使用 file:inbound-channel-adapter)并基于这些文件导入一些数据进入数据库。
最后它想删除这些文件,因为我不再需要它们,到目前为止我还没有想出如何在不编码的情况下做到这一点。
file:outbound-channel-adapter 不行,因为它移动文件而不是删除它们。
我正在尝试用
解决它
<int:outbound-channel-adapter expression="headers['file_originalFile'].delete()" ...
但我得到
Failed to convert value of type 'java.lang.String' to required type
'java.lang.Void';
你有什么办法不用编码就能解决吗?
File.delete()
return 是一个布尔值,根据合同,出站通道适配器必须 return void
(无输出)。
您可以使用 <service-activator/>
和 output-channel="nullChannel"
来丢弃结果。
或者,您可以使用表达式评估对最终消费者的建议,如 retry-and-more sample 所示。
我正在开发一个简单的 spring 集成项目,该项目选择一些文件(使用 file:inbound-channel-adapter)并基于这些文件导入一些数据进入数据库。
最后它想删除这些文件,因为我不再需要它们,到目前为止我还没有想出如何在不编码的情况下做到这一点。
file:outbound-channel-adapter 不行,因为它移动文件而不是删除它们。
我正在尝试用
解决它<int:outbound-channel-adapter expression="headers['file_originalFile'].delete()" ...
但我得到
Failed to convert value of type 'java.lang.String' to required type 'java.lang.Void';
你有什么办法不用编码就能解决吗?
File.delete()
return 是一个布尔值,根据合同,出站通道适配器必须 return void
(无输出)。
您可以使用 <service-activator/>
和 output-channel="nullChannel"
来丢弃结果。
或者,您可以使用表达式评估对最终消费者的建议,如 retry-and-more sample 所示。