final Endpoint endpoint = getCamelContext().getEndpoint(uri);
return new Processor() {
public void process(Exchange exchange) throws Exception {
ProducerCache producerCache = component.getProducerCache();
Producer producer = producerCache.acquireProducer(endpoint);
try {
producer.process(exchange);
} finally {
producerCache.releaseProducer(endpoint, producer);
}