MessageProducer
キャメルを使用して直接チャネルにメッセージを送信する単純なクラスがありますProducerTemplate
ここにコードがあります
@Component
@Slf4j
public class MessageProducer {
@EndpointInject(uri = "direct:app.out")
protected ProducerTemplate template;
public void sendEvent(Object payload, String eventName) {
Map<String, Object> headers = new HashMap<String, Object>();
headers.put("eventName", eventName);
template.sendBodyAndHeaders(payload, headers);
log.debug("Sent message {}", payload);
}
}
これをデバッグすると、webapp で実行するとテンプレートが null であることがわかりましたが、春の Junit テストでは機能します。
何がうまくいかなかったのか理解できません。