【发布时间】:2021-02-24 00:18:54
【问题描述】:
我有骆驼处理器,它使用 ConsumerTemplate 从目录中读取文件,如下所示
@Component
public class FileReaderProcessor implements Processor {
@Consume
private ConsumerTemplate consumerTemplate;
/**
* {@inheritDoc}
*/
@Override
public void process(Exchange exchange) throws Exception {
final byte[] filecontent = consumerTemplate.receiveBody(SOURCE_FILE_COMPONENT,
byte[].class);
}
}
但是当我尝试下面的代码时它可以工作
final byte[] filecontent = exchange.getContext().createConsumerTemplate().receiveBody(SOURCE_FILE_COMPONENT,
byte[].class);
问题是我需要注释 ConsumerTemplate 并在我的代码中使用它。请帮助我使用带有注释的 ConsumerTemplate
@Consume
private ConsumerTemplate consumerTemplate;
【问题讨论】:
-
既然它是一个带有
@Component的spring注释类,那么你应该能够使用spring的@Autowired等。 -
类似@Autowired private ConsumerTemplate consumerTemplate;
标签: apache-camel spring-camel camel-ftp