<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 TRANSITIONAL//EN">
<HTML>
<HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=UTF-8">
<META NAME="GENERATOR" CONTENT="GtkHTML/4.6.4">
</HEAD>
<BODY>
On Thu, 2013-09-19 at 18:21 +0200, Matthias Wessendorf wrote:
<BLOCKQUOTE TYPE=CITE>
<BR>
</BLOCKQUOTE>
<BLOCKQUOTE TYPE=CITE>
<BR>
<BR>
</BLOCKQUOTE>
<BLOCKQUOTE TYPE=CITE>
On Thu, Sep 19, 2013 at 6:04 PM, Apostolos Emmanouilidis <<A HREF="mailto:aemmanou@redhat.com">aemmanou@redhat.com</A>> wrote:
</BLOCKQUOTE>
<BLOCKQUOTE TYPE=CITE>
<BLOCKQUOTE>
I suppose that this happens because the CDI container cannot find a bean which implements the bean type AuthenticationManager<Developer>. The AuthenticationManagerImpl which is available on classpath, implements the AuthenticationManager<Agent>.<BR>
<BR>
Ag-Push should deploy without errors when using AuthenticationManager<Agent> at the injection point. <BR>
<BR>
</BLOCKQUOTE>
</BLOCKQUOTE>
<BLOCKQUOTE TYPE=CITE>
<BR>
<BR>
</BLOCKQUOTE>
<BLOCKQUOTE TYPE=CITE>
yep 'Agent' as the parameterized typed works fine. Using 'Agent' works for me as well (instead of 'requiring' User, SimpleUser or even Developer).
</BLOCKQUOTE>
<BLOCKQUOTE TYPE=CITE>
<BR>
<BR>
</BLOCKQUOTE>
<BR>
right, because User, SimpleUser, Developer extend Agent so AuthenticationManager<Agent> is not a bean type which implements AuthenticationManager<Developer or SimpleUser or User>. so the container cannot perform the resolution. <BR>
<BR>
<BLOCKQUOTE TYPE=CITE>
<BR>
<BR>
</BLOCKQUOTE>
<BLOCKQUOTE TYPE=CITE>
Thanks!
</BLOCKQUOTE>
<BLOCKQUOTE TYPE=CITE>
<BR>
<BR>
</BLOCKQUOTE>
<BLOCKQUOTE TYPE=CITE>
-M
</BLOCKQUOTE>
<BLOCKQUOTE TYPE=CITE>
<BR>
<BR>
</BLOCKQUOTE>
<BLOCKQUOTE TYPE=CITE>
</BLOCKQUOTE>
<BLOCKQUOTE TYPE=CITE>
<BLOCKQUOTE>
<BR>
On Thu, 2013-09-19 at 16:50 +0200, Matthias Wessendorf wrote: <BR>
<BLOCKQUOTE TYPE=CITE>
Hello<BR>
<BR>
<BR>
Looking at the 'AuthenticationEndpoint' I noticed that the "org.jboss.aerogear.security.auth.AuthenticationManager" class ([1]) is used without parameterization: <BR>
<A HREF="https://github.com/aerogear/aerogear-unifiedpush-server/blob/master/src/main/java/org/jboss/aerogear/unifiedpush/rest/security/AuthenticationEndpoint.java#L41-L42">https://github.com/aerogear/aerogear-unifiedpush-server/blob/master/src/main/java/org/jboss/aerogear/unifiedpush/rest/security/AuthenticationEndpoint.java#L41-L42</A><BR>
<BR>
<BR>
This works fine, but I thought to actually apply a type, like:<BR>
<BR>
<BR>
private AuthenticationManager<Developer> authenticationManager;<BR>
<BR>
<BR>
<BR>
<BR>
But now I do get a DeploymentException:<BR>
WELD-001408 Unsatisfied dependencies for type [AuthenticationManager<Developer>] with qualifiers [@Default] at injection point [[field] @Inject private org.jboss.aerogear.unifiedpush.rest.security.AuthenticationEndpoint.authenticationManager]<BR>
<BR>
<BR>
I have also changed the parameterized type to be Picketlink's User, but I do get the same (almost the same) DeploymentException:<BR>
WELD-001408 Unsatisfied dependencies for type [AuthenticationManager<User>] with qualifiers [@Default] at injection point [[field] @Inject private org.jboss.aerogear.unifiedpush.rest.security.AuthenticationEndpoint.authenticationManager]<BR>
<BR>
<BR>
Any one knows what I am doing wrong ? <BR>
<BR>
<BR>
Thanks,<BR>
Matthias<BR>
<BR>
<BR>
[1] <A HREF="https://github.com/aerogear/aerogear-security/blob/master/src/main/java/org/jboss/aerogear/security/auth/AuthenticationManager.java">https://github.com/aerogear/aerogear-security/blob/master/src/main/java/org/jboss/aerogear/security/auth/AuthenticationManager.java</A><BR>
<BR>
<BR>
<BR>
<BR>
<BR>
<BR>
<BR>
<BR>
-- <BR>
Matthias Wessendorf <BR>
<BR>
blog: <A HREF="http://matthiaswessendorf.wordpress.com/">http://matthiaswessendorf.wordpress.com/</A><BR>
sessions: <A HREF="http://www.slideshare.net/mwessendorf">http://www.slideshare.net/mwessendorf</A><BR>
twitter: <A HREF="http://twitter.com/mwessendorf">http://twitter.com/mwessendorf</A>
</BLOCKQUOTE>
</BLOCKQUOTE>
</BLOCKQUOTE>
<BLOCKQUOTE TYPE=CITE>
<BLOCKQUOTE>
<BLOCKQUOTE TYPE=CITE>
<PRE>
_______________________________________________
aerogear-dev mailing list
<A HREF="mailto:aerogear-dev@lists.jboss.org">aerogear-dev@lists.jboss.org</A>
<A HREF="https://lists.jboss.org/mailman/listinfo/aerogear-dev">https://lists.jboss.org/mailman/listinfo/aerogear-dev</A>
</PRE>
</BLOCKQUOTE>
<BR>
<BR>
</BLOCKQUOTE>
</BLOCKQUOTE>
<BLOCKQUOTE TYPE=CITE>
<BLOCKQUOTE>
<BR>
_______________________________________________<BR>
aerogear-dev mailing list<BR>
<A HREF="mailto:aerogear-dev@lists.jboss.org">aerogear-dev@lists.jboss.org</A><BR>
<A HREF="https://lists.jboss.org/mailman/listinfo/aerogear-dev">https://lists.jboss.org/mailman/listinfo/aerogear-dev</A>
</BLOCKQUOTE>
</BLOCKQUOTE>
<BLOCKQUOTE TYPE=CITE>
<BR>
<BR>
</BLOCKQUOTE>
<BLOCKQUOTE TYPE=CITE>
<BR>
<BR>
</BLOCKQUOTE>
<BLOCKQUOTE TYPE=CITE>
-- <BR>
Matthias Wessendorf <BR>
<BR>
blog: <A HREF="http://matthiaswessendorf.wordpress.com/">http://matthiaswessendorf.wordpress.com/</A><BR>
sessions: <A HREF="http://www.slideshare.net/mwessendorf">http://www.slideshare.net/mwessendorf</A><BR>
twitter: <A HREF="http://twitter.com/mwessendorf">http://twitter.com/mwessendorf</A>
</BLOCKQUOTE>
<BLOCKQUOTE TYPE=CITE>
<PRE>
_______________________________________________
aerogear-dev mailing list
<A HREF="mailto:aerogear-dev@lists.jboss.org">aerogear-dev@lists.jboss.org</A>
<A HREF="https://lists.jboss.org/mailman/listinfo/aerogear-dev">https://lists.jboss.org/mailman/listinfo/aerogear-dev</A>
</PRE>
</BLOCKQUOTE>
<BR>
</BODY>
</HTML>