В моем проекте я использую сварные швы. У меня проблема с инъекцией "GroupedExchangeAggregationStrategy" в один из моих конструкторов. У этого объекта нет конструктора аргументов по умолчанию. Beans.xml настроен на обнаружение «всех». Но я получаю unsatisfied dependency for type GroupedExchangeAggregationStrategy
.CDI Мне нужен производитель для объектов со стандартным конструктором?
Нужно ли мне создать производителя, чтобы просто вернуть new GroupedExchangeAggregationStrategy()
? Или что еще может вызвать проблему?
(Проект уже использует множество @Produces
и классификаторов. Так что КДИ материал работает в целом.)
Это слишком плохо, но спасибо. Я пришел из google guice injection, и guice может вводить все классы с помощью конструктора 0-arg. – dermoritz
@dermoritz, пожалуйста, исправьте меня. Я вас неправильно понял, но Guice в основном такой же. Поскольку вам все равно придется писать строку 'bind (GroupedExchangeAggregationStrategy)' или написать однострочный метод создания. CDI здесь не отличается. –
нет, если я непосредственно вставляю «GroupedExchangeAggregationStrategy», если я хочу ввести AggregationStrategy, тогда мне нужно привязать. – dermoritz