How are you binding using TypeLiteral instances? I have done something
similar like this:

bind(new TypeLiteral<Store<Project, Query<Project>>>() { }).to(new
TypeLiteral<JpaStore<Project, Query<Project>>>() {   });

Guice 2.0 snapshots already support binding using TypeLiteral. I
haven't used 1.0 so can't comment on it.

HTH,

Rahul

On Oct 19, 2:09 pm, Adam Ruggles <[EMAIL PROTECTED]> wrote:
> Do you know when Guice 2.0 is suppose to be able to handle binding in
> the way you mention.  I tried using guice 2.0 and still attempts to
> bind to CoreDAO<T>.
>
> On Oct 2, 7:05 am, tzwoenn <[EMAIL PROTECTED]> wrote:
>
> > 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
-~----------~----~----~----~------~----~------~--~---

Reply via email to