我有应该在Java中重写为bean的代码,因为我需要创建多个集成流而不是一个。对于每个客户。
我想为每个使用postProcessBeanFactory的客户创建JdbcPollingChannelAdapter bean,但我不知道如何为其添加通道。
<beans profile="retryProcessing">
<bean id="jdbc-poll-for-email" class="org.springframework.integration.jdbc.JdbcPollingChannelAdapter">
<constructor-arg value="dataSource"/>
<constructor-arg value="SELECT RowID..."/>
<property name="updateSql" value="UPDATE ${customer.catalog}...."/>
</bean>
</beans>
<int-jdbc:inbound-channel-adapter
query="SELECT RowID, DocumentID..."
channel="email.Channel" data-source="dataSource"
update="UPDATE ${customer.catalog} SET Status=....">
<int:poller fixed-rate="${emailAdvice.retry.period:60}" time-unit="SECONDS"/>
</int-jdbc:inbound-channel-adapter>
<int:channel id="email.Channel"/>
<int:chain input-channel="email.Channel" output-channel="email.headerEnricherChannel">
<int:splitter id="splitter"/>
<int:header-enricher>
<int:header name="inboxType" expression="payload.get('InboxType')"/>
<int:header name="rowId" expression="payload.get('RowID')"/>
</int:header-enricher>
<int:transformer>
<bean class="RowTransformer">
<constructor-arg ref="transformRow"/>
</bean>
</int:transformer>
</int:chain>
答案 0 :(得分:1)
This section of the manual显示了如何查找通道适配器所涉及的类。
具体来说,您每个人都需要一个SourcePollingChannelAdapter
和一个JdbcPollingChannelAdapter
。
另请参见the java DSL,尤其是Dynamic and Runtime Integration flows,以了解通过编程方式组装流的首选机制。