多くの場合、統合フローで膨大な役割を果たしている.handle("someBean", "someMethod")
EIPメソッドを見てきました。私はそれが以前のXML ConfigのService Activatorであることを理解できますが、このBeanの作成方法と、someMethod
が返すものについて明確にする必要があります。また、どの場合に.handle(...)
を使用する必要がありますか?多分Java DSLを使った完成した例が私にとってはうまくいくはずです。Spring統合Java DSL .handle(String beanName、String methodName)
1
A
答えて
1
正しく認識されたように、.handle("someBean", "someMethod")
は<int:service-activator ref="someBean" method="someMethod"/>
:https://docs.spring.io/spring-integration/reference/html/messaging-endpoints-chapter.html#service-activator-namespaceと完全に等しいです。
これは、someMethod
にサービス呼び出しの定義がsomeBean
であることを意味します。例えば、あなたは、大文字に着信メッセージのを変換し、結果を返すために、単純なロジックを実行する必要があります
class MyService {
public String someMethod(String payload) {
return payload.toUpperCase();
}
}
このメソッドの戻り値は、次のEIPエンドポイントへの送信メッセージでのようになりますあなたのIntegrationFlow
定義。
リファレンスマニュアルに記載されている内容は、すべてJava DSLに完全に当てはまります。特に<service-activator>
または@ServiceActivator
のすべての規則がこの.handle()
に適用されます。
関連する問題
- 1. Spring統合DSLトランス
- 2. Spring統合FTP Java DSL
- 3. ユニットテストSpring統合フローDSL
- 4. Spring統合 - AMQPの推論型Java DSL?
- 5. Spring統合JMS DSL
- 6. Spring統合Java DSL - IntegrationFlow複数のサブスクライバ
- 7. Spring統合のJava DSL:カスタムデシリアライザを指定
- 8. Spring統合DSL SFTP良い習慣
- 9. Spring統合DSL JDBCインバウンド・チャネル・アダプター
- 10. Spring統合Java DSL:エラー/例外を処理する戦略?
- 11. フローの統合テスト(Java DSL構成)
- 12. Spring統合でTomcatがシャットダウンするJava DSL
- 13. Spring Integration | Java DSL
- 14. Spring統合DSL HTTP受信ゲートウェイ
- 15. Spring統合DSLカスタムエラーチャネルが動作しない
- 16. Spring統合2つの異なるディレクトリをポーリングするJava DSLブリッジ
- 17. Spring統合型DSL:統合フローのデフォルトチャネルをプログラムで取得する方法は?
- 18. バネ統合dsl http outboundgateway
- 19. Spring統合DSL - ヘッダーにアクセスできるアウトバウンドゲートウェイ
- 20. Kafka StormとJavaの統合。 kafka.api.OffsetRequest.DefaultClientId()Ljava/lang/String;エラー
- 21. Spring Integration HTTPアウトバウンドゲートウェイポストリクエスト(Java DSL)
- 22. スプリング統合java dsl - java 7 - アウトバウンドチャネルアダプタでポーラーを設定
- 23. Java String String Out Of Bounds
- 24. 春の統合SFTPのJava DSL:メソッドhandleWithAdapter
- 25. Spring統合におけるメッセージタイプの安全性DSL
- 26. Spring統合DSL両方のチャネルに同じメッセージ
- 27. エラー 'は、Spring統合アグリゲータ用の一方向の' MessageHandler 'です。DSL
- 28. Spring統合におけるメッセージ集約ロジックのカスタマイズ方法Java DSL
- 29. Spring統合中期フロートランザクションを追加するDSL
- 30. Spring統合サービスアクティベータハンドラビジネスロジック
すぐに回答いただきありがとうございます。 'someMethod'に' @ Bean'で注釈を付ける必要はありますか?また、私は変換EIPメソッドで同じロジックを実行できます。したがって、 '.handle(...)'の使用法の別の例を挙げることができますか?どの場合、 '.handle(...)'を厳密に使用しなければならないのですか? –
いいえ、私は豆のためだけに '@ Bean'を必要とします。 beanのメソッドを '@Configuration'ファイルに追加します。あなたはすでに 'someBean'をbeanとして持っています。サービスメソッドには、注釈が完全になくてもかまいません。 '.transform()'の矛盾した '.handle()'のもう一つのサンプルはあなたのメソッドからの 'JdbcTemplate'の直接使用に似ています。そうです、変圧器でも可能ですが、適切なコンポーネント間でロジックを区別する方が良いでしょう。それが変換に関するものでなければ、 '.handle()'があなたのためです!さらに、 '.handle()'は返信を要求しませんが、 '.transform()'は返答を要求しません。 –