Генератор GWT не вызывается с GIN Injection - PullRequest
0 голосов
/ 21 июля 2011

Я объявил генератор в своем дескрипторе модуля GWT, и кажется, что он не вызывается, когда класс, который запускает генератор, создается через Ginjector.

public interface MyGinjector extends Ginjector {
  MyWidget getMyWidget();
}


public class MyEntryPoint implements EntryPoint {

  public static final MyGinjector INJECTOR = GWT.create(MyGinjector.class);

  public void onModuleLoad() {
    MyWidget myWidget = INJECTOR.getMyWidget(); // [1]
    MyWidget myWidget = GWT.create(MyWidget.class); // [2]
    RootPanel.add(myWidget);
  }

}

[1] Генератор не вызывается,[2] Генератор называется.

Означает ли это, что инжектор GIN не создает экземпляр объекта с помощью метода GWT.create ()?

Спасибо за вашу помощь.С уважением,

1 Ответ

1 голос
/ 21 июля 2011

AFAIK, GIN (по крайней мере, до 1,5) будет генерировать GWT.create() только в том случае, если класс имеет открытый конструктор с нулевым аргументом , который не аннотирован @Inject (в противном случае он будет работатьnew на нем)

...