Have you bind your DAOs?
bind(new TypeLiteral<CoreDAO<User>>(){}).to(UserJPADAO.class);
bind(new TypeLiteral<CoreDAO<Topic>>(){}).to(TopicJPADAO.class);
Actually I do not know, whether Guice 1.0 is able to figure out the
generic type of inhereted injection points is. I believe this will be
implemented in Guice 2.0.
BR, Sven
On Oct 2, 8:29 am, Adam Ruggles <[EMAIL PROTECTED]> wrote:
> I simplified my use of generics and I still can seem to figure this
> one out. Here are my test Services.
>
> public abstract class AbstractService <T extends CoreEntity<?>>
> implements CoreService<T> {
> protected CoreDAO<T> dao;
>
> @Inject
> public void setDao(final CoreDAO<T> dao) {
> this.dao = dao;
> }
>
> ... Methods that use the dao ...
>
> }
>
> public class UserServiceImpl extends AbstractService<User> implements
> UserService {
>
> }
>
> public class TopicServiceImpl extends AbstractService<Topic>
> implements TopicService {
>
> }
>
> On Oct 1, 1:10 pm, Adam Ruggles <[EMAIL PROTECTED]> wrote:
>
> > I'm not seeing how to handle the following situation.
>
> > I have a AbstractService bean with the following protected object
>
> > public abstract class AbstractService <T extends CoreEntity<ID>, ID
> > extends Serializable> implements CoreService<T, ID> {
> > protected CoreDAO<T, ID> dao;
>
> > @Inject
> > public void setDao(final CoreDAO<T, ID> dao) {
> > this.dao = dao;
> > }
>
> > ... Methods that use the dao ...
>
> > }
>
> > public class UserServiceImpl extends AbstractService<User, Integer>
> > implements UserService {}
>
> > public class TopicServiceImpl extends AbstractService<Topic, Integer>
> > implements TopicService {
>
> > }
>
> > Now how do I tell Guice to use UserJPADAO.class for the
> > UserServiceImpl and TopicJPADAO.class for TopicServiceImpl?
--~--~---------~--~----~------------~-------~--~----~
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
-~----------~----~----~----~------~----~------~--~---