title: Camel Throwing MethodNotFound for method that exists and is public
body: <p>I'm testing a camel round but when I have the route try to access a particular method in a bean it keeps saying that there is no such method found. Source:</p>
  
  <pre><code>public class CommunicatorTest
  {
      FakeMessageConverter converter;
      CamelContext context;
      ProducerTemplate template;
      String producerEndpoint = "seda:messagesFound";
      long test = 123456789;
  
      static final Logger logger = Logger.getLogger(CommunicatorTest.class);
  
      public CommunicatorTest()
      {
  
      }
  
      @Before
      public void setUp() throws Exception
      {
          converter = new FakeMessageConverter();
          SimpleRegistry registry = new SimpleRegistry();
          registry.put("converter", converter);
          context = new DefaultCamelContext(registry);
          template = context.createProducerTemplate();
          context.addRoutes(new CommunicatorRoute());
  
          logger.info("Done creating context");
  
          context.start();
      }
  
      @After
      public void tearDown() throws Exception
      {
          context.stop();
      }
  
  
      @Test
      public void testExistanceOfBean()
      {
          Object lookup = context.getRegistry().lookup("converter");
          assertTrue("Object not a MessageConverter", lookup instanceof FakeMessageConverter);
      }
  
      @Test
      public void testRoute()
      {
          Message msg = new Message();
          msg.setHeader(new MessageHeader());
          msg.getHeader().setSourceId(test);
  
          logger.info("Sending data");
          template.sendBody(producerEndpoint, msg);
  
  
          assertEquals("value not the same", test, converter.getSid());
          logger.info("Done Sending");
      }
  
      private static class FakeMessageConverter
      {
  
          private long sid;
          private boolean edited = false;
  
          public FakeMessageConverter()
          {
          }
  
          public void processMessage(Message msg)
          {
              sid = msg.getHeader().getSourceId();
              edited = true;
              logger.info("The sid"+sid);
          }
  
          /**
           * @return the sid
           */
          public long getSid()
          {
              return sid;
          }
  
          /**
           * @param sid the sid to set
           */
          public void setSid(long sid)
          {
              this.sid = sid;
          }
      }
  
  }
  </code></pre>
  
  <p>The route is as follows:</p>
  
  <pre><code>public class CommunicatorRoute extends RouteBuilder
  {
  
      @Override
      public void configure() throws Exception
      {
          from("seda:messagesFound").bean("converter", "processMessage");
      }
  
  }
  </code></pre>
  
  <p>The exception is as follows:</p>
  
  <pre><code>ERROR [org.apache.camel.component.seda.SedaConsumer] - Error processing exchange. Exchange[Message: net.package.Message@f593af]. Caused by: [org.apache.camel.component.bean.MethodNotFoundException - Method with name: processMessage not found on bean: converter. Exchange[Message: net.package.message.Message@f593af]]
  </code></pre>
  
  <p>org.apache.camel.component.bean.MethodNotFoundException: Method with name: processMessage not found on bean: converter. Exchange[Message: com.saic.jswe.common.cdif.message.Message@f593af]</p>
  
  <p>I'm still fairly new to camel so if I'm making some really simple mistake please let me know.</p>