Spring Integration中链内部的一般规则

时间:2015-07-30 15:12:13

标签: jpa spring-integration

我需要使用JPA检索出站网关,我想用标题扩展器链接它。为了做到这一点,我查看了文档以了解是否存在一条通用规则来了解端点是否可以位于链中。我无法找到可能与否的经验法则。

我的具体情况我试图这样做:

<int:chain input-channel="audTrailRetrievalChannel" output-channel="updateResponseForTestSent">
    <int-jpa:retrieving-outbound-gateway id="getAudTrail" jpa-query="select e.details from AudTrail e where e.audTrailRecId = :id" entity-manager-factory="auditEntityManager">
        <int-jpa:parameter name="id" expression="payload?.body?.response?.responseInformation?.communicationVariables?.variable.?[variableName=='audTrailRecId'][0]?.variableValue"/>
    </int-jpa:retrieving-outbound-gateway>
    <int:header-enricher>
        <int:header name="registerMethod" value="registerAuditTrail" overwrite="true"/>
    </int:header-enricher>
</int:chain>    

1 个答案:

答案 0 :(得分:1)

您可以在链中放置任何内容,但出站通道适配器或路由器(任何没有输出通道的任何内容 - 实现MessageProducer)必须是最后一个元素。

http://docs.spring.io/spring-integration/reference/html/messaging-routing-chapter.html#chain