2017-01-24 8 views
1

単純なテストバンドルを作成しましたが、私たちのCamelルートの1つでMongoDBを使用しようとすると、ルートはもう開始されません。MongoDBはCamel 4.0.8でCamel 2.18.1で動作しません

青写真は非常に簡単です:

<?xml version="1.0" encoding="UTF-8"?> 
<blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:cm="http://aries.apache.org/blueprint/xmlns/blueprint-cm/v1.1.0" 
    xsi:schemaLocation=" 
     http://www.osgi.org/xmlns/blueprint/v1.0.0 https://www.osgi.org/xmlns/blueprint/v1.0.0/blueprint.xsd 
     http://camel.apache.org/schema/blueprint http://camel.apache.org/schema/blueprint/camel-blueprint.xsd 
     http://aries.apache.org/blueprint/xmlns/blueprint-cm/v1.1.0 http://aries.apache.org/schemas/blueprint-cm/blueprint-cm-1.1.0.xsd"> 

    <bean id="mongo" class="com.mongodb.Mongo"> 
     <argument value="localhost"/> 
    </bean> 

    <camelContext id="blueprint-bean-context" 
     xmlns="http://camel.apache.org/schema/blueprint"> 

     <route id="testTimer"> 
      <from uri="timer:testTimer?period=5000" /> 

      <setBody> 
       <spel>{"type": "product"}</spel> 
      </setBody> 
      <to uri="mongodb:mongo?database=testdb&amp;collection=mycollection&amp;operation=findAll" /> 
      <log message="Result was queried" /> 

     </route> 
    </camelContext> 

</blueprint> 

MongoDBのはPOMで依存関係として追加されます。 DEBUGモードのログの抜粋は、次のとおりです。

2017-01-24 13:41:27,672 | DEBUG | raf-4.0.8/deploy | ReferenceRecipe     | 12 - org.apache.aries.blueprint.core - 1.7.1 | Binding reference .camelBlueprint.languageResolver.spel to [org.apache.camel.spi.LanguageResolver] 
2017-01-24 13:41:27,672 | DEBUG | raf-4.0.8/deploy | BlueprintLanguageResolver  | 55 - org.apache.camel.camel-blueprint - 2.18.1 | Found language resolver: spel in registry: [email protected]375f 
2017-01-24 13:41:27,673 | DEBUG | raf-4.0.8/deploy | DefaultChannel     | 58 - org.apache.camel.camel-core - 2.18.1 | Initialize channel for target: 'SetBody[spel{SpelExpression[{"type": "product"}]}]' 
2017-01-24 13:41:27,673 | DEBUG | raf-4.0.8/deploy | BlueprintContainerImpl   | 12 - org.apache.aries.blueprint.core - 1.7.1 | Instantiating component blueprintBundle 
2017-01-24 13:41:27,676 | DEBUG | raf-4.0.8/deploy | DefaultManagementAgent   | 58 - org.apache.camel.camel-core - 2.18.1 | Registered MBean with ObjectName: org.apache.camel:context=de.test.bundle-x1-blueprint-bean-context,type=tracer,name=BacklogTracer 
2017-01-24 13:41:27,676 | DEBUG | raf-4.0.8/deploy | BlueprintContainerImpl   | 12 - org.apache.aries.blueprint.core - 1.7.1 | Instantiating component blueprintBundle 
2017-01-24 13:41:27,680 | DEBUG | raf-4.0.8/deploy | DefaultManagementAgent   | 58 - org.apache.camel.camel-core - 2.18.1 | Registered MBean with ObjectName: org.apache.camel:context=de.test.bundle-x1-blueprint-bean-context,type=tracer,name=BacklogDebugger 
2017-01-24 13:41:27,683 | DEBUG | raf-4.0.8/deploy | DefaultManagementAgent   | 58 - org.apache.camel.camel-core - 2.18.1 | Registered MBean with ObjectName: org.apache.camel:context=de.test.bundle-x1-blueprint-bean-context,type=errorhandlers,name="DefaultErrorHandlerBuilder(ref:CamelDefaultErrorHandlerBuilder)" 
2017-01-24 13:41:27,686 | DEBUG | raf-4.0.8/deploy | DefaultComponent     | 58 - org.apache.camel.camel-core - 2.18.1 | Creating endpoint uri=[mongodb://mongo?collection=processing_requests&database=genex&operation=findAll], path=[mongo] 
2017-01-24 13:41:27,686 | DEBUG | raf-4.0.8/deploy | BlueprintContainerImpl   | 12 - org.apache.aries.blueprint.core - 1.7.1 | Instantiating component mongo 
2017-01-24 13:41:27,687 | INFO | raf-4.0.8/deploy | BlueprintCamelContext   | 58 - org.apache.camel.camel-core - 2.18.1 | Apache Camel 2.18.1 (CamelContext: blueprint-bean-context) is shutting down 
2017-01-24 13:41:27,687 | DEBUG | raf-4.0.8/deploy | efaultAsyncProcessorAwaitManager | 58 - org.apache.camel.camel-core - 2.18.1 | Shutting down with no inflight threads. 
2017-01-24 13:41:27,688 | DEBUG | raf-4.0.8/deploy | TimerListenerManager    | 58 - org.apache.camel.camel-core - 2.18.1 | Removed TimerListener: [email protected] 
2017-01-24 13:41:27,688 | DEBUG | raf-4.0.8/deploy | DefaultManagementAgent   | 58 - org.apache.camel.camel-core - 2.18.1 | Unregistered MBean with ObjectName: org.apache.camel:context=de.test.bundle-x1-blueprint-bean-context,type=context,name="blueprint-bean-context" 
2017-01-24 13:41:27,688 | DEBUG | raf-4.0.8/deploy | DefaultInflightRepository  | 58 - org.apache.camel.camel-core - 2.18.1 | Shutting down with no inflight exchanges. 

なぜCamelコンテキストがすぐに起動してシャットダウンするのですか?タイマーは実行されず、ログメッセージは決して印刷されません。 MongoDBを呼び出すためにtoを削除するとすぐに動作します。

答えて

1

変更豆宣言

<bean id="mongo" class="com.mongodb.MongoClient"> 

<bean id="mongo" class="com.mongodb.Mongo"> 

あなたはキャメルのためにMongoのコンポーネントのofficial documentationでそれについての詳細を読むことができます。

関連する問題