2017-02-17 10 views
0

Camel Jettyコンポーネントをゲートウェイとして使用するCamel Endpointsルートを持つSpring Bootアプリケーションがあります。Camel JettyコンポーネントでSpring BootからJettyを使用するには?

@Component 
public class StartEcommerce extends RouteBuilder { 

    @Override 
    public void configure() throws Exception { 

    restConfiguration() 
     .host("localhost") 
     .port(8085); 

    rest("/rest/v1") 
     .post("/order") 
      .to("direct:ecommerceRestRoute") 
     .post("/cancelEnrollment") 
      .to("direct:cancelEnrollmentRestRoute"); 

    // other routes ... 
    } 

}

すべてはので、私はポートに8085.

を実行するために桟橋のコンポーネントを置く場合しかし、私はすでにポート8081で実行されている春ブーツの桟橋を使用したい正常に動作します私は、アクチュエータからエンドポイントをヘルス・チェックするアクセス権を持っているし、このように私のRESTエンドポイントを呼び出すことができるようにしたい:この議論に従うことをしようとしました

localhost:8081/health 
localhost:8081/rest/v1/order 
localhost:8081/rest/v1/cancelEnrollment 

Use existing http server in spring boot as camel endpoint

が、私は2 Jettys私はラクダ桟橋2.18.0春ブーツ1.4.2を使用しているのと同じポート

*************************** 
APPLICATION FAILED TO START 
*************************** 

Description: 

Embedded servlet container failed to start. Port 8081 was already in use. 

Action: 

Identify and stop the process that's listening on port 8081 or configure this application to listen on another port. 

上で実行しているので、私は、エラー以下ました。リリース。

どのように私はこれを達成することができますか?

答えて

1

解決策が見つかりました。ビルド.gradleに不正な依存関係が設定されています。

restConfiguration() 
    .host("localhost") 
    .port(8081); 

そして

https://github.com/camelinaction/camelinaction2/blob/master/chapter7/springboot-camel/src/main/java/camelinaction/HelloRoute.java

サンタクロースイプセンからこの例では、次のとおりです。私は私のルートから、残りの設定を削除するだけでなく

compile('org.apache.camel:camel-jetty:2.18.0') 

関連する問題