2017-06-18 68 views
0

我有駱駝運行在我的JVM和hawtio連接到它。我可以在hawtio JMX選項卡中看到Camel細節。當我在camelcontex.xml中更改任何內容並重新啓動我的karaf時,這些更改沒有反映在hawtio中。駱駝上下文更改不反映在hawtio

所以我無法調試我的路線hawtio。

有人可以建議任何配置,以便更改開始反映在hawtio中,我可以通過hawtio調試我的路由。

我CamelContex.xml

<route id="cbr-route"> 
      <from id="_from1" uri="file://C:/temp/camel"/> 
      <log id="_log1" message="Receiving order ${file:name}"/> 
      <choice id="_choice1"> 
       <when id="_when1"> 
        <xpath id="_xpath1">/order/customer/country = 'UK'</xpath> 
        <log id="_log2" message="Sending order ${file:name} to the UK"/> 
        <to id="_to1" uri="file:work/cbr/output/uk"/> 
       </when> 
       <when id="_when2"> 
        <xpath id="_xpath2">/order/customer/country = 'US'</xpath> 
        <log id="_log3" message="Sending order ${file:name} to the US"/> 
        <to id="_to2" uri="file:work/cbr/output/us"/> 
       </when> 
       <otherwise id="_otherwise1"> 
        <log id="_log4" message="Sending order ${file:name} to another country"/> 
        <to id="_to3" uri="file:work/cbr/output/others"/> 
       </otherwise> 
      </choice> 
      <log id="_log5" message="Done processing ${file:name}"/> 
     </route> 

hawtio源標籤航線

<route xmlns="http://camel.apache.org/schema/spring" id="cbr-route"> 
     <from uri="file:work/cbr/input" id="_from1"/> 
     <log message="Receiving order ${file:name}" id="_log1"/> 
     <choice id="_choice1"> 
      <when id="_when1"> 
       <xpath>/order/customer/country = 'UK'</xpath> 
       <log message="Sending order ${file:name} to the UK" id="_log2"/> 
       <to uri="file:work/cbr/output/uk" id="_to1"/> 
      </when> 
      <when id="_when2"> 
       <xpath>/order/customer/country = 'US'</xpath> 
       <log message="Sending order ${file:name} to the US" id="_log3"/> 
       <to uri="file:work/cbr/output/us" id="_to2"/> 
      </when> 
      <otherwise id="_otherwise1"> 
       <log message="Sending order ${file:name} to another country" id="_log4"/> 
       <to uri="file:work/cbr/output/others" id="_to3"/> 
      </otherwise> 
     </choice> 
     <log message="Done processing ${file:name}" id="_log5"/> 
    </route> 

謝謝你這麼多的高級。

+0

我試圖停止和啓動所有hawtio捆綁,但沒有工作 – Arun

+0

Karaf 6.3 Apache的駱駝2.17.0 hawtio 1.4.0 – Arun

回答

1

如果您的意思是您從hawtio Web控制檯更改Camel XML,那麼這些更改不是持久的,它們僅在運行時在內存中更改。如果您需要持續更改,則需要更改源代碼,重新構建並重新部署到karaf。

但是,Karaf支持部署單個xml文件,並將其複製到deploy文件夾。然後,您可以對該文件進行更改並保存,並且karaf應該檢測文件更改並自動重新部署。

+0

謝謝你這麼多@Claus易卜生,其榮譽談論你。我是Apache Camel和Fuse的新手,我試圖通過將項目添加到服務器來在Jboss Studio中部署兩個Fuse項目。你能否指出我可以通過Jboss Studio在Karaf中添加2-3個項目。 2.)我也嘗試了不同的時間更改源代碼重建和重新部署到卡拉夫,即使我刪除數據文件夾,但仍然源代碼的變化不反映在hawtio。我是否需要更改任何配置文件以反映在hawtio中更改。請提出您的寶貴意見 – Arun

+0

@請務必在POM中用'-SNAPSHOT'版本標記您的包。如果您重新部署相同的穩定版本,則可能無法重新載入所有內容。 –