сеттер для впрыска + калитка

У меня есть веб-страница Wicket, на которой я создаю новый объект класса A: A a = new A (User u);

В A я хотел бы иметь сеттер-инъекцию, но на самом деле это не сделано. Я слышал, что нужно предоставить пустой конструктор, но как можно иметь также непустой конструктор с инъекцией установщика?


person user326667    schedule 06.05.2010    source источник


Ответы (2)


Я не знаком с Wicket, но предполагаю, что на вашей веб-странице Wicket есть разные вещи, помеченные @Inject, да?

Итак, у вас есть несколько вариантов; в порядке предпочтения:

  • Если вы @Inject добавляете свой User, один из вариантов - аннотировать конструктор A с помощью @Inject, а затем на своей странице просто @Inject либо A, либо Provider<A> на веб-странице.
  • Вы можете @Inject на свою веб-страницу MembersInjector<A> (назовите его aMembersInjector), а затем, после того, как вы создадите свой A вызов объекта, aMembersInjector.injectMembers(a), чтобы вызвать все инъекции установщика.
  • Вы можете @Inject на свою веб-страницу Injector и позвонить Injector.injectMembers(a) после того, как создадите свой A.
person Daniel Martin    schedule 07.05.2010

Я не совсем понимаю, о чем вы спрашиваете. Тем не менее, попробуйте взглянуть на

Посмотрите, могут ли какие-либо примеры пролить свет на вашу проблему.

person Brian Laframboise    schedule 07.05.2010