2017-03-21 9 views
0

Java - スプリング - ラクダ春のapacheラクダから春の豆

私はサービスのリストでラクダのルートを開始したいと思います。

次のようにいくつかしたいですが、fromメソッドがプロデューサーではないようです。ダイナミックプロデューサーをどのように定義できますか?

@Component 
    class A{ 

    List getServices(){ 
     return services; 
    } 
    } 

    @Component 
    class B{ 

     void save(List services){ 
     save(services) 
     } 
    } 

    class myRoute extends SpringRouteBuilder{ 
    ... 

    @Override 
    public void configure() throws Exception{ 

    from("A", "getServices").to("direct:my-route-b"); 
    from("direct:my-route-b").to("b", "save"); 


    } 
    ... 
    } 

答えて

1

あなたはAにproducerTemplateを注入し、ダイレクトにサービスを送信することができます:私のルート-B hereが説明するように。

@Component 
class A{ 

    @EndpointInject(uri="direct:my-route-b") 
    ProducerTemplate producer; 

    List getServices(){ 
     return services; 
    } 

    public void invoke() { 
     producer.sendBody(getServices()); 
    } 
} 
+0

@Autowire A a; a.invoke(); //これが正しい方法です? –

+0

はいいいえ – ltsallas

関連する問題