Job-Launching Gateway 的可用屬性
作業啟動閘道器具有以下屬性,您可以設定這些屬性來控制作業
-
id:標識底層 Spring bean 定義,它是以下之一的例項:-
EventDrivenConsumer -
PollingConsumer(確切的實現取決於元件的輸入通道是SubscribableChannel還是PollableChannel。)
-
-
auto-startup:布林標誌,指示端點應在啟動時自動啟動。預設值為true。 -
request-channel:此端點的輸入MessageChannel。 -
reply-channel:將結果JobExecution有效載荷傳送到的MessageChannel。 -
reply-timeout:允許您指定此閘道器在丟擲異常之前,等待回覆訊息成功傳送到回覆通道的時間(以毫秒為單位)。此屬性僅適用於通道可能阻塞的情況(例如,當使用當前已滿的有界佇列通道時)。另請注意,當傳送到DirectChannel時,呼叫發生在傳送者的執行緒中。因此,傳送操作的失敗可能由更下游的其他元件引起。reply-timeout屬性對映到底層MessagingTemplate例項的sendTimeout屬性。如果未指定,該屬性預設為 -1,這意味著預設情況下,Gateway會無限期等待。 -
job-launcher:可選。接受自定義JobLauncherbean 引用。如果未指定,介面卡將重用在jobLauncher的id下注冊的例項。如果不存在預設例項,則會丟擲異常。 -
order:當此端點作為訂閱者連線到SubscribableChannel時,指定呼叫的順序。
當此 Gateway 從 PollableChannel 接收訊息時,您必須提供一個全域性預設的 Poller,或者向 Job Launching Gateway 提供一個 Poller 子元素。
-
Java
-
XML
以下示例展示瞭如何在 Java 中提供輪詢器
@Bean
@ServiceActivator(inputChannel = "queueChannel", poller = @Poller(fixedRate="1000"))
public JobLaunchingGateway sampleJobLaunchingGateway() {
JobLaunchingGateway jobLaunchingGateway = new JobLaunchingGateway(jobLauncher());
jobLaunchingGateway.setOutputChannel(replyChannel());
return jobLaunchingGateway;
}
以下示例展示瞭如何在 XML 中提供輪詢器
<batch-int:job-launching-gateway request-channel="queueChannel"
reply-channel="replyChannel" job-launcher="jobLauncher">
<int:poller fixed-rate="1000">
</batch-int:job-launching-gateway>