title: useOriginalMessage() and multiple 'from' nodes
body: <p>I'm using the Grails routing plugin which allows defining Camel routes with a Groovy DSL syntax very similar to the Java DLS syntax.</p>
  
  <p>Suppose I have the following RouteBuilder:</p>
  
  <pre><code>class MyRoute extends RouteBuilder {
    from('activemq:route1')
      .to('someProcessor1')
      .to('direct:route2')
  
    from('direct:route2')
      .to('someProcessor2')
  
    onException(Throwable.class).useOriginalMessage().handled(true)
      .to('activemq:route.failed')
  }
  </code></pre>
  
  <p>If I have a message that starts at <code>activemq:route1</code>, then moves through <code>direct:route2</code> but fails in the <code>someProcessor2</code>, then I end up with the message as it started at <code>activemq:route1</code> in my <code>activemq:route.failed</code> queue... but that's not what I want. If I have a failure in <code>someProcessor2</code>, I want the message as it started at <code>direct:route2</code> (and likewise, if I have a failure in <code>someProcessor1</code>, I want the <code>activemq:route1</code> message in my failed queue).</p>
  
  <p>Is there any Apache Camel feature that allows me to "reset" the original message at the beginning of a RouteDefintion (i.e. <code>from(&lt;uri&gt;)</code>)?</p>