Java Spring集成SFTP-从XML获取配置

Java Spring集成SFTP-从XML获取配置,java,spring,spring-integration,Java,Spring,Spring Integration,假设我在xml中有这些配置 <int-sftp:outbound-channel-adapter id="sftpOutbound" channel="sftpChannel" auto-create-directory="true" remote-directory="/path/to/remote/directory/" session-factory="cachingSessionFac

假设我在xml中有这些配置

<int-sftp:outbound-channel-adapter  id="sftpOutbound"
            channel="sftpChannel"
            auto-create-directory="true"
            remote-directory="/path/to/remote/directory/"
            session-factory="cachingSessionFactory">
    <int-sftp:request-handler-advice-chain>
        <int:retry-advice />
    </int-sftp:request-handler-advice-chain>
</int-sftp:outbound-channel-adapter>

如何在Java类中检索属性,即远程目录

我尝试使用
context.getBean('sftpOutbound')
,但它返回的EventDrivenConsumer类没有获取配置的方法


我使用的是spring integration sftp V4.0.0。

事实上,我更关心的是您为什么想要访问它。我的意思是,远程目录和其他属性将与每条消息的标题一起提供,因此您可以在消息级别访问它,但不能在事件驱动的使用者级别访问它,这是出于设计,因此我的问题。

我猜您得到的也是一个问题,您是否尝试过使用其方法getIntegrationProperties()?我认为该方法受到保护,我无法从其他类访问该方法。我还使用了SpringIntegrationV4.0.0。我会把这个加到我的问题上。好的。v、 4.0.0 getRemoteFilename方法如何?Sftp出站通道适配器似乎已经被Sft出站网关所取代,现在我只想检索远程目录,这样我就可以使用文件名fullpath进行其他操作,比如保存到db中。这意味着我只能在发送消息后才能获得完整路径,是吗?嗯,解决“保存到db”或任何其他“副作用”的方法不止一种。首先,“远程目录”是一个硬编码的属性,通常通过外部属性设置,这意味着任何对该属性值感兴趣的组件都可以获得它。您还可以使用通道拦截器。等等,但不是直接通过EDC,正如所说,这是通过设计。无论如何,根据我的理解,外部属性对您来说是最好的方式,但是正如我所说的,如果您解释您的用例,它会更好。现在感觉你正试图做错事