2014-02-25 52 views
0

我一直在關注發送消息到死信通道的例子,但還沒有計算出如何測試這個。消息確實被路由到DLC,但我想確保這是經過測試的。阿帕奇駱駝測試死信通道

例如,我將如何測試在日誌:dead端點上收到的消息。此代碼是從CamelTestSupport延伸的測試類:

@Override 
protected RouteBuilder createRouteBuilder() throws Exception { 

    return new RouteBuilder() { 
     @Override 
     public void configure() throws Exception { 
      errorHandler(deadLetterChannel("log:dead?level=ERROR").logHandled(true)); 

      from("direct:testdlc").process(new Processor() { 
       @Override 
       public void process(Exchange exchange) throws Exception { 
        throw new IllegalArgumentException("kaboom!"); 
       } 
      }).to("mock:file"); 
     } 
    }; 
} 

一種選擇是將其寫入到一個新的途徑,但我希望用出的現成的記錄。

回答

0

您可以在記錄後將消息發送到模擬端點。

from("log:dead?level=ERROR").to("mock:logger");