【问题标题】:how to pass header attribute from file outbound adapter to transformer如何将标头属性从文件出站适配器传递到转换器
【发布时间】:2017-10-29 13:49:30
【问题描述】:

我正在使用文件出站适配器读取文件并将它们传递给使用 spring 集成 DSL 的一系列转换器,并注意到这些转换器无法访问文件名。 如何在下面传递初始文件名:

IntegrationFlows.from(Files
            .inboundAdapter(new File(this.props.getIndir()))
            .autoCreateDirectory(true)
            .preventDuplicates(true)
            .patternFilter(this.props.getFilePattern()),
            e -> e.poller(Pollers.fixedDelay(5000L)))


            ...

            .transform(Transformers.converter(fileConverter))
            ....

【问题讨论】:

    标签: spring-integration dsl


    【解决方案1】:

    您需要出示您的转换器代码;您可以使用 @Header 注释传入离散的标头...

    public Result transform(@Payload File foo, @Header("...") String bar, ...)
    

    或者直接传入整个Message<?>,这样您就可以访问标题...

    public Result transform(Message<File> message)
    

    【讨论】:

    • 非常感谢。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-03-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-08-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多