如何在Spring集成Web服务出站网关中将文件添加为附件

时间:2014-10-17 22:23:50

标签: attachment spring-integration

我有一个用于Webservices的spring集成出站网关。到这时,我将xml格式的请求发送到Web服务。 现在,我需要将一个文件作为请求的一部分发送到Web服务。 我该怎么做?  下面是spring集成链现有的配置:

<!--  Chain to Process requests for XXXXX-->
    <int:chain id="psTestChain" input-channel="psTestInputChannel" >
        <!-- Set up transformer for input message -->
        <int:transformer method="transform"  ref="testRequestXformer"/>

        <!-- This Spring Integration chain first adds the service name and the 
            service operation headers to the Spring Integration message using the header 
    <int:header-enricher>
            <int:header name="#{XXXXXXXXX}"
                value="TestSearch" />
            <int:header
                name="#{XXXXXX}"
                value="searchByTestIdentifier" />
        </int:header-enricher>

        <!-- The WS outbound gateway is used to make an outgoing SOAP call. -->
        <int-ws:outbound-gateway id="simpleGateway"
            destination-provider="testDestinationProvider"
            message-sender="testHttpsMessageSender"
            interceptor="test_wss4jInterceptor"
            header-mapper="testSoapHeaderMapper"/>

        <!-- Set up transformer for output message -->
        <int:transformer method="transform" ref="testResponseXformer"/> 

    </int:chain>

1 个答案:

答案 0 :(得分:0)

请查看Spring {MTOM sample的{WS}项目。

由于Spring Integration WS模块完全基于Spring WS,我认为使用附件作为Message payload来构建JaxB对象并发送给{{1}注入<int-ws:outbound-gateway>

我们就此事开放issue,但我没有足够的时间来看看我们应该在那里做些什么。

我刚刚为Spring Integration Samples提出ticket来跟踪MTOM在Spring Integration中的能力。