Кажется, я столкнулся с небольшой проблемой при использовании @Autowired в пользовательском перехватчике cxf. Мой вариант использования заключается в том, что я хочу регистрировать мыльные сообщения и отправлять их с помощью AMQP в другую систему. Этот процесс работает для обычных сервисов и т. д. Но что бы я ни делал, необходимые свойства не подключаются автоматически и остаются нулевыми.
Я проверил журнал Spring DI, контекст просканирован и получен, так что же я упустил?
Возможно ли это вообще в перехватчиках CXF?
@Component
public class LogInInterceptor extends AbstractSoapInterceptor {
private @Value("#{rabbitMQProperties['rabbitmq.binding.log.soap']}")
String binding;
@Autowired
AmqpTemplate amqpTemplate;
public LogInInterceptor() {
super(Phase.RECEIVE);
}
@Override
public void handleMessage(SoapMessage soapMessage) throws Fault {
logIt(soapMessage);
}
private void logIt(SoapMessage message) throws Fault {
// rest of the code omitted...!!!
amqpTemplate.convertAndSend(binding, buffer.toString());
}
}