2012-04-09 6 views
0

2つのアウトバウンドチャネルアダプタが接続されたチャネルがあり、どちらもそのアクティビティの結果を含むMessageオブジェクトを返します。 これは、SI 2.1へのアップグレードが行われるまで動作しました。今、私はメソッドがnull以外の値を返すという事実のため、エラーメッセージが出ます。Springインテグレーション:アウトバウンドチャネルアダプタからの非ヌル応答を返します。

はここでのサンプルコードです:

<integration:gateway id="notificationGateway" 
        default-request-channel="notificationRecordsFetcher" 
        default-reply-channel="notifySupplier" 
        service-interface="com.supplier.NotificationGateway"/> 

<!-- Submit the file to the supplier--> 
<integration:channel id="notifySupplier"/> 

<!-- Handle the secured transfer (first) --> 
<integration:outbound-channel-adapter order="1" channel="notifySupplier" id="SupplierSecuredFileTransfer" ref="SubmitToSupplier" method="submit" /> 

<!-- Delete the notification records marked as successful (second) --> 
<integration:outbound-channel-adapter order="2" channel="notifySupplier" id="deleteNotificationRecords" ref="databaseService" method="removeNotificationEntries" /> 

「SupplierSecuredFileTransfer」として識別アダプタはXMLファイルの束を取り、それぞれがデータベースレコードを表し、先のフォルダにSFTPを使用して送信します。その後、正常に配信されたレコードをマークし、「deleteNotificationRecords」と識別された第2のアダプタへの応答としてそれらを送信し、第1のアダプタによって更新されたメッセージペイロードを読み取り、それに対して実行する。 新しい制限が導入されたので、アダプタ間で情報を渡すことができません。 これを克服する方法はありますか?

答えて

0

あなたはどのバージョンを移行しましたか?

< outbound-channel-adapter />を< service-activator />に変更し、チャネルを入力チャネルに変更し、出力チャネルを「nullChannel」に設定します。

+0

「SupplierSecuredFileTransfer」アダプタはSFTPサブミッションを処理する必要があるため、アダプタ(おそらくSF 2.1アダプタで導入されたSFTPアダプタまたはゲートウェイ)を使用する必要があり、サブミットデータベースエントリの結果に基づいて削除する必要があります。 –

+0

また、移行したSIのバージョンは1.0だと思います –

関連する問題