Can someone assist me in getting DI working? Here's what I've done in
my webapp:
1) Added method injection to a setter:
@Inject
public void setSearchApplication(SearchApplication searchApp) {
this.searchApp = searchApp;
}
2) Extended a AbstractModule and overrode configure():
protected void configure() {
bind(SearchApplication.class).to(LuceneSearch.class).in(Scopes.SINGLETON);
}
2) Extended GuiceServletContextListener and overrode getInjector():
@Override
protected Injector getInjector() {
return Guice.createInjector(Stage.DEVELOPMENT, new
ExtendedAbstractModule());
}
3) Registered the listener in web.xml:
<listener>
<listener-class>com.inject.ExtendedGuiceServletContextListener</
listener-class>
</listener>
I've verified that the
ExtendedGuiceServletContextListener.getInjector() is being called
after starting the webapp. I then check the value of searchApp in the
class that contains the setter that is @Inject annotated as mentioned
in step 1 above. The value of searchApp is null. Is there a step I
am missing?
--
You received this message because you are subscribed to the Google Groups
"google-guice" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/google-guice?hl=en.