温馨提示:本文翻译自stackoverflow.com,查看原文请点击:transactions - How to work transactionally with spring-integration-smb
spring-integration transactions

transactions - 如何使用spring-integration-smb进行事务处理

发布于 2020-04-23 14:28:58

我是Spring Integration项目的新手。我正在尝试与spring-integration-smb项目以事务方式处理远程文件(来自SMB2共享)借助此博客文章,我能够PseudoTransactionManager本地文件系统上以事务方式(使用Spring的)处理文件。现在,我尝试调整该示例以处理远程共享(SMB)上的文件,但还没有找到解决事务性的解决方案。您知道我如何实现这样的事务处理吗?

查看更多

提问者
Joe
被浏览
85
Artem Bilan 2020-02-07 02:22

您仍然可以将类似的方法与PseudoTransactionManagerTransactionSynchronizationFactory组合使用,以跟踪交易状态。

对于回滚操作还挺您可以使用SmbRemoteFileTemplate调用它rename()remove()等业务。失败的消息为您在标题中包含所有必要的信息:

messageBuilder.setHeader(FileHeaders.REMOTE_HOST_PORT, uri.getHost() + ':' + uri.getPort())
                    .setHeader(FileHeaders.REMOTE_DIRECTORY, uri.getPath())
                    .setHeader(FileHeaders.REMOTE_FILE, uri.getFragment());