フィールドレベルのインジェクションを行おうとしているので、コントローラーがインスタンス化されるときに「モデル」を渡す必要はありません。
UserController controller = new UserController(/*No need to pass models here*/);
ただし、私のアプリケーションは NullPointerException をスローします。ここに私のコード:
ユーザーコントローラー.java
public class UserController implements Controller {
@Inject private UserModel model;
public UserController() {
model.doSomething(); // NullPointerException
}
}
ClientGinModule.java
public class ClientGinModule extends AbstractGinModule {
@Override
protected void configure() {
bind(UserModel.class).in(Singleton.class);
}
}
何が問題なのですか?