<div dir="ltr">On Wed, Apr 26, 2017 at 7:04 PM, Werner Keil <span dir="ltr"><<a href="mailto:werner.keil@gmail.com" target="_blank">werner.keil@gmail.com</a>></span> wrote:<br><div class="gmail_extra"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex"><div dir="ltr">JSR 365 is not yet final, the FAB just started yesterday, but it had to be a rather drastic change to still remove it from the CDI 2 Spec and RI, otherwise letting 375 extend it sounds like a good idea.<br></div></blockquote><div><br></div><div>JSR 365 might theoretically be an option, but ideally the ownership exchange would happen simultaneously. </div><div><br></div><div>For as long as this link still works, see:</div><div><br></div><div>* <a href="https://java.net/jira/si/jira.issueviews:issue-html/SERVLET_SPEC-116/SERVLET_SPEC-116.html">https://java.net/jira/si/jira.issueviews:issue-html/SERVLET_SPEC-116/SERVLET_SPEC-116.html</a></div><div><br></div><div>And:</div><div><br></div><div>* <a href="https://issues.jboss.org/browse/CDI-492">https://issues.jboss.org/browse/CDI-492</a><br></div><div><br></div><div>If you want to start the discussion at the Servlet mailing list, please don't be shy ;)</div><div><br></div><div>To be sure, do note we have two groups of artefacts in play here:</div><div><br></div><div>* Build-in beans for HttpServletRequest, HttpSession, ServletContext - This is between the Servlet spec and the CDI spec</div><div>* Build-in bean for Principal - This is between the Java EE Security spec and the CDI spec</div><div><br></div><div>Kind regards,</div><div>Arjan Tijms</div><div><br></div><div><br></div><div><br></div><div><br></div><div><br></div><div><br></div><div><br></div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div class="gmail_extra"><br clear="all"><div><div class="gmail-m_-7005654342203998136gmail_signature"><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><p style="margin:0px;border-collapse:collapse"><font face="arial, helvetica, sans-serif" size="1"><span lang="EN-US">Werner </span></font></p><span lang="EN-GB"><div style="font-family:arial,helvetica,sans-serif"><br></div></span></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div>
<br><div class="gmail_quote"><span class="gmail-">On Wed, Apr 26, 2017 at 6:56 PM, <span dir="ltr"><<a href="mailto:cdi-dev-request@lists.jboss.org" target="_blank">cdi-dev-request@lists.jboss.<wbr>org</a>></span> wrote:<br></span><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex"><span class="gmail-">Send cdi-dev mailing list submissions to<br>
<a href="mailto:cdi-dev@lists.jboss.org" target="_blank">cdi-dev@lists.jboss.org</a><br>
<br>
To subscribe or unsubscribe via the World Wide Web, visit<br>
<a href="https://lists.jboss.org/mailman/listinfo/cdi-dev" rel="noreferrer" target="_blank">https://lists.jboss.org/mailma<wbr>n/listinfo/cdi-dev</a><br>
or, via email, send a message with subject or body 'help' to<br>
<a href="mailto:cdi-dev-request@lists.jboss.org" target="_blank">cdi-dev-request@lists.jboss.or<wbr>g</a><br>
<br>
You can reach the person managing the list at<br>
<a href="mailto:cdi-dev-owner@lists.jboss.org" target="_blank">cdi-dev-owner@lists.jboss.org</a><br>
<br>
When replying, please edit your Subject line so it is more specific<br>
than "Re: Contents of cdi-dev digest..."<br>
<br>
<br>
Today's Topics:<br>
<br></span>
1. Re: Types of Principal object (arjan tijms)<br>
<br>
<br>
------------------------------<wbr>------------------------------<wbr>----------<br>
<br>
Message: 1<br>
Date: Wed, 26 Apr 2017 18:56:10 +0200<span class="gmail-"><br>
From: arjan tijms <<a href="mailto:arjan.tijms@gmail.com" target="_blank">arjan.tijms@gmail.com</a>><br>
Subject: Re: [cdi-dev] Types of Principal object<br></span>
To: Werner Keil <<a href="mailto:werner.keil@gmail.com" target="_blank">werner.keil@gmail.com</a>><br>
Cc: cdi-dev <<a href="mailto:cdi-dev@lists.jboss.org" target="_blank">cdi-dev@lists.jboss.org</a>><br>
Message-ID:<br>
<CAE=-<a href="mailto:AhD65_mWbOBM0JL-c_UzL4p-k_76_T_Y3E08PZNFpJJTHA@mail.gmail.com" target="_blank">AhD65_mWbOBM0JL-c_UzL4p-<wbr>k_76_T_Y3E08PZNFpJJTHA@mail.gm<wbr>ail.com</a>><span class="gmail-"><br>
Content-Type: text/plain; charset="utf-8"<br>
<br>
Hi,<br>
<br></span><div><div class="gmail-h5">
We might do sub-types of Principal, and leave the base Principal at CDI<br>
(since we can't change that now in CDI 2.0).<br>
<br>
But we are also short of time. I'm not even sure TBH when the deadline for<br>
the JSR 375 PR is.<br>
<br>
Kind regards,<br>
Arjan Tijms<br>
<br>
<br>
<br>
<br>
<br>
On Wed, Apr 26, 2017 at 6:51 PM, Werner Keil <<a href="mailto:werner.keil@gmail.com" target="_blank">werner.keil@gmail.com</a>> wrote:<br>
<br>
> If Soteria could handle something like that independent of the underlying<br>
> CDI implementation, it would be great. At the moment it does not seem to<br>
> require Weld, so unless it redefined the whole "AbstractBean"<br>
> functionality, not sure, if we can do it there, but I would certainly love<br>
> to see it there if possible.<br>
><br>
> Kind Regards,<br>
> Werner<br>
><br>
><br>
> On Wed, Apr 26, 2017 at 6:41 PM, arjan tijms <<a href="mailto:arjan.tijms@gmail.com" target="_blank">arjan.tijms@gmail.com</a>><br>
> wrote:<br>
><br>
>> Hi,<br>
>><br>
>> On Wed, Apr 26, 2017 at 6:14 PM, Werner Keil <<a href="mailto:werner.keil@gmail.com" target="_blank">werner.keil@gmail.com</a>><br>
>> wrote:<br>
>><br>
>>> Not sure, if I follow you on that?<br>
>>><br>
>>> java.security.Principal is not part of the CDI spec at all and only used<br>
>>> by a special subclass of<br>
>>> AbstractEEBean<T><br>
>>><br>
>><br>
>> I think what Romain intended here is that the build-in Bean<T> for<br>
>> Principal is removed from CDI and moved to e.g. the Java EE Security spec.<br>
>> In case of Weld that would be org.jboss.weld.bean.builtin<br>
>> .ee.PrincipalBean<br>
>><br>
>> (see <a href="http://grepcode.com/file/repo1.maven.org/maven2/org.jbo" rel="noreferrer" target="_blank">http://grepcode.com/file/repo1<wbr>.maven.org/maven2/org.jbo</a><br>
>> ss.weld.servlet/weld-servlet/2<wbr>.3.0.Beta3/org/jboss/weld/<br>
>> bean/builtin/ee/PrincipalBean.<wbr>java#PrincipalBean)<br>
>><br>
>> The Principal type itself is of course not part of CDI, but part of Java<br>
>> SE.<br>
>><br>
>> Btw, a CDI extension can easily scan the application for occurrences of<br>
>> Injection Points that have a Principal subtype as their target, and then<br>
>> dynamically add a specific Bean<T> for that. This is what we do in<br>
>> OmniFaces as well.<br>
>><br>
>> See<br>
>><br>
>> * Collecting types: <a href="https://github.com/omnifaces/omnifaces/blob/develop/" rel="noreferrer" target="_blank">https://github.com/omnifaces/o<wbr>mnifaces/blob/develop/</a><br>
>> src/main/java/org/omnifaces/cd<wbr>i/param/ParamExtension.java#L6<wbr>1<br>
>><br>
>> * Adding a Bean<T> for each encountered type: <a href="https://github.com/omnif" rel="noreferrer" target="_blank">https://github.com/omnif</a><br>
>> aces/omnifaces/blob/develop/sr<wbr>c/main/java/org/omnifaces/<br>
>> cdi/param/ParamExtension.java#<wbr>L74<br>
>><br>
>> Kind regards,<br>
>> Arjan Tijms<br>
>><br>
>><br>
>><br>
>><br>
>>><br>
>>><br>
>>> The problem seems the generic T which Java at this point is unable to<br>
>>> know about at runtime.<br>
>>><br>
>>> It makes no difference, if you had<br>
>>> PrincipalBean extends AbstractEEBean<Principal><br>
>>> or a<br>
>>> StringBean extends AbstractBuiltInBean<String><br>
>>><br>
>>> Even created a JUnit test in<br>
>>><br>
>>> <a href="https://github.com/unitsofmeasurement/uom-se/blob/master/src" rel="noreferrer" target="_blank">https://github.com/unitsofmeas<wbr>urement/uom-se/blob/master/src</a><br>
>>> /test/java/tec/uom/se/AbsUnitT<wbr>est.java<br>
>>><br>
>>> Which under Java 8 returns<br>
>>><br>
>>> "java.lang.reflect.TypeVariabl<wbr>e<D>"<br>
>>><br>
>>> No sign of "Length" which is what you'd hoped for (maybe we did not dig<br>
>>> deep enough, maybe it won't work until a future Java version?)<br>
>>><br>
>>><br>
>>> Werner<br>
>>><br>
>>><br>
>>> On Wed, Apr 26, 2017 at 5:46 PM, <<a href="mailto:cdi-dev-request@lists.jboss.org" target="_blank">cdi-dev-request@lists.jboss.o<wbr>rg</a>><br>
>>> wrote:<br>
>>><br>
>>>> Send cdi-dev mailing list submissions to<br>
>>>> <a href="mailto:cdi-dev@lists.jboss.org" target="_blank">cdi-dev@lists.jboss.org</a><br>
>>>><br>
>>>> To subscribe or unsubscribe via the World Wide Web, visit<br>
>>>> <a href="https://lists.jboss.org/mailman/listinfo/cdi-dev" rel="noreferrer" target="_blank">https://lists.jboss.org/mailm<wbr>an/listinfo/cdi-dev</a><br>
>>>> or, via email, send a message with subject or body 'help' to<br>
>>>> <a href="mailto:cdi-dev-request@lists.jboss.org" target="_blank">cdi-dev-request@lists.jboss.o<wbr>rg</a><br>
>>>><br>
>>>> You can reach the person managing the list at<br>
>>>> <a href="mailto:cdi-dev-owner@lists.jboss.org" target="_blank">cdi-dev-owner@lists.jboss.org</a><br>
>>>><br>
>>>> When replying, please edit your Subject line so it is more specific<br>
>>>> than "Re: Contents of cdi-dev digest..."<br>
>>>><br>
>>>><br>
>>>> Today's Topics:<br>
>>>><br>
>>>> 1. Re: Types of Principal object (Romain Manni-Bucau)<br>
>>>> 2. Re: Types of Principal object (Werner Keil)<br>
>>>><br>
>>>><br>
>>>> ------------------------------<wbr>------------------------------<wbr>----------<br>
>>>><br>
>>>> Message: 1<br>
>>>> Date: Wed, 26 Apr 2017 17:41:08 +0200<br>
>>>> From: Romain Manni-Bucau <<a href="mailto:rmannibucau@gmail.com" target="_blank">rmannibucau@gmail.com</a>><br>
>>>> Subject: Re: [cdi-dev] Types of Principal object<br>
>>>> To: arjan tijms <<a href="mailto:arjan.tijms@gmail.com" target="_blank">arjan.tijms@gmail.com</a>><br>
>>>> Cc: cdi-dev <<a href="mailto:cdi-dev@lists.jboss.org" target="_blank">cdi-dev@lists.jboss.org</a>><br>
>>>> Message-ID:<br>
>>>> <CACLE=7OK-JWXptMQxM8BUAvE2ab<wbr>5gOwNiNBHCDbjy=<a href="mailto:UNkuEGQg@mail.gm" target="_blank">UNkuEGQg@mail.<wbr>gm</a><br></div></div><span class="gmail-">
>>>> <a href="http://ail.com" rel="noreferrer" target="_blank">ail.com</a>><br>
>>>> Content-Type: text/plain; charset="utf-8"<br>
>>>><br></span><div><div class="gmail-h5">
>>>> that's why security API needs a more typed API acting as an handler and<br>
>>>> not<br>
>>>> as a contextual instance, it would allow to unwrap the actual instance<br>
>>>> (like most specs do) but at CDI level it should also be possible. If<br>
>>>> not we<br>
>>>> have this built-in bean never working until you add another not<br>
>>>> mandatory<br>
>>>> spec - for CDI level. In other words either Principal is removed from<br>
>>>> CDI<br>
>>>> spec or it stays but it should be extended to be made usable IMHO.<br>
>>>><br>
>>>><br>
>>>><br>
>>>> Romain Manni-Bucau<br>
>>>> @rmannibucau <<a href="https://twitter.com/rmannibucau" rel="noreferrer" target="_blank">https://twitter.com/rmannibuc<wbr>au</a>> | Blog<br>
>>>> <<a href="https://blog-rmannibucau.rhcloud.com" rel="noreferrer" target="_blank">https://blog-rmannibucau.rhcl<wbr>oud.com</a>> | Old Blog<br>
>>>> <<a href="http://rmannibucau.wordpress.com" rel="noreferrer" target="_blank">http://rmannibucau.wordpress.<wbr>com</a>> | Github <<br>
>>>> <a href="https://github.com/rmannibucau" rel="noreferrer" target="_blank">https://github.com/rmannibucau</a><wbr>> |<br>
>>>> LinkedIn <<a href="https://www.linkedin.com/in/rmannibucau" rel="noreferrer" target="_blank">https://www.linkedin.com/in/r<wbr>mannibucau</a>> | JavaEE Factory<br>
>>>> <<a href="https://javaeefactory-rmannibucau.rhcloud.com" rel="noreferrer" target="_blank">https://javaeefactory-rmannib<wbr>ucau.rhcloud.com</a>><br>
>>>><br>
>>>> 2017-04-26 17:11 GMT+02:00 arjan tijms <<a href="mailto:arjan.tijms@gmail.com" target="_blank">arjan.tijms@gmail.com</a>>:<br>
>>>><br>
>>>> > Hi,<br>
>>>> ><br>
>>>> > We discussed this very issue in the Security API EG as well. In the<br>
>>>> > Security API the actual type *MUST* be retained as per the spec<br>
>>>> definition.<br>
>>>> ><br>
>>>> > The problem in CDI, at least in Weld, is that a proxy is injected.<br>
>>>> This<br>
>>>> > happens via the build-in bean "PrincipalBean extends AbstractEEBean",<br>
>>>> where<br>
>>>> > AbstractEEBean does:<br>
>>>> ><br>
>>>> > public abstract class AbstractEEBean<T> extends<br>
>>>> > AbstractStaticallyDecorableBui<wbr>ltInBean<T> {<br>
>>>> ><br>
>>>> > private final T proxy;<br>
>>>> ><br>
>>>> > protected AbstractEEBean(Class<T> type, Callable<T> callable,<br>
>>>> > BeanManagerImpl beanManager) {<br>
>>>> > super(beanManager, type);<br>
>>>> > this.proxy = new ProxyFactory<T>(beanManager.ge<wbr>tContextId(),<br>
>>>> > type, getTypes(), this).create(new EnterpriseTargetBeanInstance(t<wbr>ype,<br>
>>>> new<br>
>>>> > CallableMethodHandler(callable<wbr>)));<br>
>>>> > }<br>
>>>> > // ...<br>
>>>> > }<br>
>>>> ><br>
>>>> > I'm not even sure if it's possible to downcast the proxy to the<br>
>>>> required<br>
>>>> > runtime type.<br>
>>>> ><br>
>>>> > Also note that the Principal can change during the request. The<br>
>>>> simplest<br>
>>>> > case is when during an http request HttpServletRequest#logout is<br>
>>>> called.<br>
>>>> ><br>
>>>> > Kind regards,<br>
>>>> > Arjan Tijms<br>
>>>> ><br>
>>>> ><br>
>>>> ><br>
>>>> ><br>
>>>> > On Wed, Apr 26, 2017 at 3:54 PM, John Ament <<br>
>>>> <a href="mailto:john.ament@spartasystems.com" target="_blank">john.ament@spartasystems.com</a>><br>
>>>> > wrote:<br>
>>>> ><br>
>>>> >> Hey guys<br>
>>>> >><br>
>>>> >><br>
>>>> >> I raised a bug against the Weld guys, but think its worth an EG<br>
>>>> >> discussion. When a Principal object is injected, the only type it<br>
>>>> has is<br>
>>>> >> Principal. It does not retain the actual type used at runtime.<br>
>>>> This threw<br>
>>>> >> me off on some Keycloak integration I'm working on (in $dayjob). So<br>
>>>> I was<br>
>>>> >> wondering, is this expected from our POV or should it retain the<br>
>>>> types of<br>
>>>> >> the actual runtime instance?<br>
>>>> >><br>
>>>> >><br>
>>>> >> John<br>
>>>> >><br>
>>>> >> ------------------------------<br>
>>>> >> NOTICE: This e-mail message and any attachments may contain<br>
>>>> confidential,<br>
>>>> >> proprietary, and/or privileged information which should be treated<br>
>>>> >> accordingly. If you are not the intended recipient, please notify the<br>
>>>> >> sender immediately by return e-mail, delete this message, and<br>
>>>> destroy all<br>
>>>> >> physical and electronic copies. Thank you.<br>
>>>> >><br>
>>>> >> ______________________________<wbr>_________________<br>
>>>> >> cdi-dev mailing list<br>
>>>> >> <a href="mailto:cdi-dev@lists.jboss.org" target="_blank">cdi-dev@lists.jboss.org</a><br>
>>>> >> <a href="https://lists.jboss.org/mailman/listinfo/cdi-dev" rel="noreferrer" target="_blank">https://lists.jboss.org/mailma<wbr>n/listinfo/cdi-dev</a><br>
>>>> >><br>
>>>> >> Note that for all code provided on this list, the provider licenses<br>
>>>> the<br>
>>>> >> code under the Apache License, Version 2 (<br>
>>>> <a href="http://www.apache.org/license" rel="noreferrer" target="_blank">http://www.apache.org/license</a><br>
>>>> >> s/LICENSE-2.0.html). For all other ideas provided on this list, the<br>
>>>> >> provider waives all patent and other intellectual property rights<br>
>>>> inherent<br>
>>>> >> in such information.<br>
>>>> >><br>
>>>> ><br>
>>>> ><br>
>>>> > ______________________________<wbr>_________________<br>
>>>> > cdi-dev mailing list<br>
>>>> > <a href="mailto:cdi-dev@lists.jboss.org" target="_blank">cdi-dev@lists.jboss.org</a><br>
>>>> > <a href="https://lists.jboss.org/mailman/listinfo/cdi-dev" rel="noreferrer" target="_blank">https://lists.jboss.org/mailma<wbr>n/listinfo/cdi-dev</a><br>
>>>> ><br>
>>>> > Note that for all code provided on this list, the provider licenses<br>
>>>> the<br>
>>>> > code under the Apache License, Version 2 (<a href="http://www.apache.org/" rel="noreferrer" target="_blank">http://www.apache.org/</a><br>
>>>> > licenses/LICENSE-2.0.html). For all other ideas provided on this list,<br>
>>>> > the provider waives all patent and other intellectual property rights<br>
>>>> > inherent in such information.<br>
>>>> ><br>
>>>> -------------- next part --------------<br>
>>>> An HTML attachment was scrubbed...<br>
>>>> URL: <a href="http://lists.jboss.org/pipermail/cdi-dev/attachments/2017042" rel="noreferrer" target="_blank">http://lists.jboss.org/piperma<wbr>il/cdi-dev/attachments/2017042</a><br>
>>>> 6/ad930662/attachment-0001.htm<wbr>l<br>
>>>><br>
>>>> ------------------------------<br>
>>>><br>
>>>> Message: 2<br>
>>>> Date: Wed, 26 Apr 2017 17:44:04 +0200<br>
>>>> From: Werner Keil <<a href="mailto:werner.keil@gmail.com" target="_blank">werner.keil@gmail.com</a>><br>
>>>> Subject: Re: [cdi-dev] Types of Principal object<br>
>>>> To: cdi-dev <<a href="mailto:cdi-dev@lists.jboss.org" target="_blank">cdi-dev@lists.jboss.org</a>><br>
>>>> Message-ID:<br>
>>>> <CAAGawe1dmVUmgnrnmtV_oS0==ft<wbr>tYOe44ZhG4YfO+yme2=<a href="mailto:oT_A@mail.gm" target="_blank">oT_A@mail.<wbr>gm</a><br></div></div><span class="gmail-">
>>>> <a href="http://ail.com" rel="noreferrer" target="_blank">ail.com</a>><br>
>>>> Content-Type: text/plain; charset="utf-8"<br>
>>>><br></span><div><div class="gmail-h5">
>>>> Seems the title of the thread was also not "reified" in this case.<br>
>>>> Sometimes reply just works, but if it was lost, sorry for that.<br>
>>>><br>
>>>> Werner<br>
>>>><br>
>>>><br>
>>>> On Wed, Apr 26, 2017 at 5:41 PM, Werner Keil <<a href="mailto:werner.keil@gmail.com" target="_blank">werner.keil@gmail.com</a>><br>
>>>> wrote:<br>
>>>><br>
>>>> > We had similar challenges and discussions even before JSR 363 about<br>
>>>> > knowing what type of quantity you're dealing with types like<br>
>>>> ><br>
>>>> > Unit<Q extends Quantity <<a href="http://unitsofmeasurement.git" rel="noreferrer" target="_blank">http://unitsofmeasurement.git</a><br>
>>>> <a href="http://hub.io/unit-api/site/apidocs/javax/measure/Quantity.html" rel="noreferrer" target="_blank">hub.io/unit-api/site/apidocs/j<wbr>avax/measure/Quantity.html</a>><Q><wbr>><br>
>>>> ><br>
>>>> > I can only confirm Arjan's impression. And I had numerous<br>
>>>> conversations<br>
>>>> > with Andrew Kennedy, the Chief Architect behind the F# Units of<br>
>>>> Measurement<br>
>>>> > support and other .NET libraries about it. Where he mentioned<br>
>>>> shortcomings<br>
>>>> > of the Java language especially the lack of Reified Generics (<br>
>>>> > <a href="http://stackoverflow.com/questions/31876372/what-is-reification" rel="noreferrer" target="_blank">http://stackoverflow.com/quest<wbr>ions/31876372/what-is-reificat<wbr>ion</a>),<br>
>>>> which<br>
>>>> > C#, F# or other .NET languages got, but Java won't at least not until<br>
>>>> Java<br>
>>>> > 10, 11 or even later.<br>
>>>> ><br>
>>>> > I tried a lot between 2010 and now but so far none of these Reflection<br>
>>>> > tricks and approaches were stable enough, so not sure, if it'll work<br>
>>>> any<br>
>>>> > better in this case (unless you implement CDI in C#;-)<br>
>>>> ><br>
>>>> > Werner<br>
>>>> ><br>
>>>> ><br>
>>>> > On Wed, Apr 26, 2017 at 5:29 PM, <<a href="mailto:cdi-dev-request@lists.jboss.org" target="_blank">cdi-dev-request@lists.jboss.o<wbr>rg</a>><br>
>>>> wrote:<br>
>>>> ><br>
>>>> >> Send cdi-dev mailing list submissions to<br>
>>>> >> <a href="mailto:cdi-dev@lists.jboss.org" target="_blank">cdi-dev@lists.jboss.org</a><br>
>>>> >><br>
>>>> >> To subscribe or unsubscribe via the World Wide Web, visit<br>
>>>> >> <a href="https://lists.jboss.org/mailman/listinfo/cdi-dev" rel="noreferrer" target="_blank">https://lists.jboss.org/mailm<wbr>an/listinfo/cdi-dev</a><br>
>>>> >> or, via email, send a message with subject or body 'help' to<br>
>>>> >> <a href="mailto:cdi-dev-request@lists.jboss.org" target="_blank">cdi-dev-request@lists.jboss.o<wbr>rg</a><br>
>>>> >><br>
>>>> >> You can reach the person managing the list at<br>
>>>> >> <a href="mailto:cdi-dev-owner@lists.jboss.org" target="_blank">cdi-dev-owner@lists.jboss.org</a><br>
>>>> >><br>
>>>> >> When replying, please edit your Subject line so it is more specific<br>
>>>> >> than "Re: Contents of cdi-dev digest..."<br>
>>>> >><br>
>>>> >><br>
>>>> >> Today's Topics:<br>
>>>> >><br>
>>>> >> 1. Types of Principal object (John Ament)<br>
>>>> >> 2. Re: Types of Principal object (Romain Manni-Bucau)<br>
>>>> >> 3. Re: Types of Principal object (Matej Novotny)<br>
>>>> >> 4. Re: Types of Principal object (arjan tijms)<br>
>>>> >><br>
>>>> >><br>
>>>> >> ------------------------------<wbr>------------------------------<br>
>>>> ----------<br>
>>>> >><br>
>>>> >> Message: 1<br>
>>>> >> Date: Wed, 26 Apr 2017 13:54:57 +0000<br>
>>>> >> From: John Ament <<a href="mailto:john.ament@spartasystems.com" target="_blank">john.ament@spartasystems.com</a>><br>
>>>> >> Subject: [cdi-dev] Types of Principal object<br>
>>>> >> To: cdi-dev <<a href="mailto:cdi-dev@lists.jboss.org" target="_blank">cdi-dev@lists.jboss.org</a>><br>
>>>> >> Message-ID:<br>
>>>> >> <CY4PR04MB048607BF779F8680ED5<wbr>CE53898110@CY4PR04MB0486.<wbr>namprd<br>
>>>> >> <a href="http://04.prod.outlook.com" rel="noreferrer" target="_blank">04.prod.outlook.com</a>><br>
>>>> >><br>
>>>> >> Content-Type: text/plain; charset="iso-8859-1"<br>
>>>> >><br>
>>>> >> Hey guys<br>
>>>> >><br>
>>>> >><br>
>>>> >> I raised a bug against the Weld guys, but think its worth an EG<br>
>>>> >> discussion. When a Principal object is injected, the only type it<br>
>>>> has is<br>
>>>> >> Principal. It does not retain the actual type used at runtime.<br>
>>>> This threw<br>
>>>> >> me off on some Keycloak integration I'm working on (in $dayjob). So<br>
>>>> I was<br>
>>>> >> wondering, is this expected from our POV or should it retain the<br>
>>>> types of<br>
>>>> >> the actual runtime instance?<br>
>>>> >><br>
>>>> >><br>
>>>> >> John<br>
>>>> >><br>
>>>> >> ______________________________<wbr>__<br>
>>>> >> NOTICE: This e-mail message and any attachments may contain<br>
>>>> confidential,<br>
>>>> >> proprietary, and/or privileged information which should be treated<br>
>>>> >> accordingly. If you are not the intended recipient, please notify the<br>
>>>> >> sender immediately by return e-mail, delete this message, and<br>
>>>> destroy all<br>
>>>> >> physical and electronic copies. Thank you.<br>
>>>> >> -------------- next part --------------<br>
>>>> >> An HTML attachment was scrubbed...<br>
>>>> >> URL: <a href="http://lists.jboss.org/pipermail/cdi-dev/attachments/2017042" rel="noreferrer" target="_blank">http://lists.jboss.org/piperma<wbr>il/cdi-dev/attachments/2017042</a><br>
>>>> >> 6/b6740722/attachment-0001.htm<wbr>l<br>
>>>> >><br>
>>>> >> ------------------------------<br>
>>>> >><br>
>>>> >> Message: 2<br>
>>>> >> Date: Wed, 26 Apr 2017 16:38:01 +0200<br>
>>>> >> From: Romain Manni-Bucau <<a href="mailto:rmannibucau@gmail.com" target="_blank">rmannibucau@gmail.com</a>><br>
>>>> >> Subject: Re: [cdi-dev] Types of Principal object<br>
>>>> >> To: John Ament <<a href="mailto:john.ament@spartasystems.com" target="_blank">john.ament@spartasystems.com</a>><br>
>>>> >> Cc: cdi-dev <<a href="mailto:cdi-dev@lists.jboss.org" target="_blank">cdi-dev@lists.jboss.org</a>><br>
>>>> >> Message-ID:<br>
>>>> >> <CACLE=7N=<a href="mailto:pkvZDX3ULCFAK2Fhw8-bH0pbOsqctqsbkPhKk8i1VA@mail.gm" target="_blank">pkvZDX3ULCFAK2Fhw8-<wbr>bH0pbOsqctqsbkPhKk8i1VA@mail.g<wbr>m</a><br>
>>>> >> <a href="http://ail.com" rel="noreferrer" target="_blank">ail.com</a>><br>
>>>> >> Content-Type: text/plain; charset="utf-8"<br>
>>>> >><br>
>>>> >> Hi John,<br>
>>>> >><br>
>>>> >> agree CDI/security integration (mainly through Principal bean) is<br>
>>>> >> completely unusable in practise cause Principal type is too simple<br>
>>>> (name<br>
>>>> >> only) and casting is needed in 99.99% of apps. AFAIK It is tracked at<br>
>>>> >> <a href="https://issues.jboss.org/browse/CDI-597" rel="noreferrer" target="_blank">https://issues.jboss.org/brows<wbr>e/CDI-597</a>.<br>
>>>> >><br>
>>>> >><br>
>>>> >> Romain Manni-Bucau<br>
>>>> >> @rmannibucau <<a href="https://twitter.com/rmannibucau" rel="noreferrer" target="_blank">https://twitter.com/rmannibuc<wbr>au</a>> | Blog<br>
>>>> >> <<a href="https://blog-rmannibucau.rhcloud.com" rel="noreferrer" target="_blank">https://blog-rmannibucau.rhcl<wbr>oud.com</a>> | Old Blog<br>
>>>> >> <<a href="http://rmannibucau.wordpress.com" rel="noreferrer" target="_blank">http://rmannibucau.wordpress.<wbr>com</a>> | Github <<br>
>>>> >> <a href="https://github.com/rmannibucau" rel="noreferrer" target="_blank">https://github.com/rmannibucau</a><wbr>> |<br>
>>>> >> LinkedIn <<a href="https://www.linkedin.com/in/rmannibucau" rel="noreferrer" target="_blank">https://www.linkedin.com/in/r<wbr>mannibucau</a>> | JavaEE Factory<br>
>>>> >> <<a href="https://javaeefactory-rmannibucau.rhcloud.com" rel="noreferrer" target="_blank">https://javaeefactory-rmannib<wbr>ucau.rhcloud.com</a>><br>
>>>> >><br>
>>>> >> 2017-04-26 15:54 GMT+02:00 John Ament <<a href="mailto:john.ament@spartasystems.com" target="_blank">john.ament@spartasystems.com</a>><br>
>>>> :<br>
>>>> >><br>
>>>> >> > Hey guys<br>
>>>> >> ><br>
>>>> >> ><br>
>>>> >> > I raised a bug against the Weld guys, but think its worth an EG<br>
>>>> >> > discussion. When a Principal object is injected, the only type it<br>
>>>> has<br>
>>>> >> is<br>
>>>> >> > Principal. It does not retain the actual type used at runtime.<br>
>>>> This<br>
>>>> >> threw<br>
>>>> >> > me off on some Keycloak integration I'm working on (in $dayjob).<br>
>>>> So I<br>
>>>> >> was<br>
>>>> >> > wondering, is this expected from our POV or should it retain the<br>
>>>> types<br>
>>>> >> of<br>
>>>> >> > the actual runtime instance?<br>
>>>> >> ><br>
>>>> >> ><br>
>>>> >> > John<br>
>>>> >> ><br>
>>>> >> > ------------------------------<br>
>>>> >> > NOTICE: This e-mail message and any attachments may contain<br>
>>>> >> confidential,<br>
>>>> >> > proprietary, and/or privileged information which should be treated<br>
>>>> >> > accordingly. If you are not the intended recipient, please notify<br>
>>>> the<br>
>>>> >> > sender immediately by return e-mail, delete this message, and<br>
>>>> destroy<br>
>>>> >> all<br>
>>>> >> > physical and electronic copies. Thank you.<br>
>>>> >> ><br>
>>>> >> > ______________________________<wbr>_________________<br>
>>>> >> > cdi-dev mailing list<br>
>>>> >> > <a href="mailto:cdi-dev@lists.jboss.org" target="_blank">cdi-dev@lists.jboss.org</a><br>
>>>> >> > <a href="https://lists.jboss.org/mailman/listinfo/cdi-dev" rel="noreferrer" target="_blank">https://lists.jboss.org/mailma<wbr>n/listinfo/cdi-dev</a><br>
>>>> >> ><br>
>>>> >> > Note that for all code provided on this list, the provider<br>
>>>> licenses the<br>
>>>> >> > code under the Apache License, Version 2 (<a href="http://www.apache.org/" rel="noreferrer" target="_blank">http://www.apache.org/</a><br>
>>>> >> > licenses/LICENSE-2.0.html). For all other ideas provided on this<br>
>>>> list,<br>
>>>> >> > the provider waives all patent and other intellectual property<br>
>>>> rights<br>
>>>> >> > inherent in such information.<br>
>>>> >> ><br>
>>>> >> -------------- next part --------------<br>
>>>> >> An HTML attachment was scrubbed...<br>
>>>> >> URL: <a href="http://lists.jboss.org/pipermail/cdi-dev/attachments/2017042" rel="noreferrer" target="_blank">http://lists.jboss.org/piperma<wbr>il/cdi-dev/attachments/2017042</a><br>
>>>> >> 6/19976ebd/attachment-0001.htm<wbr>l<br>
>>>> >><br>
>>>> >> ------------------------------<br>
>>>> >><br>
>>>> >> Message: 3<br>
>>>> >> Date: Wed, 26 Apr 2017 10:48:40 -0400 (EDT)<br>
>>>> >> From: Matej Novotny <<a href="mailto:manovotn@redhat.com" target="_blank">manovotn@redhat.com</a>><br>
>>>> >> Subject: Re: [cdi-dev] Types of Principal object<br>
>>>> >> To: John Ament <<a href="mailto:john.ament@spartasystems.com" target="_blank">john.ament@spartasystems.com</a>><br>
>>>> >> Cc: cdi-dev <<a href="mailto:cdi-dev@lists.jboss.org" target="_blank">cdi-dev@lists.jboss.org</a>><br>
>>>> >> Message-ID:<br>
>>>> >> <<a href="mailto:1098875365.1348630.1493218120014.JavaMail.zimbra@redhat.com" target="_blank">1098875365.1348630.149321812<wbr>0014.JavaMail.zimbra@redhat.<wbr>com</a><br>
>>>> ><br>
>>>> >> Content-Type: text/plain; charset=utf-8<br>
>>>> >><br>
>>>> >> Hey John,<br>
>>>> >><br>
>>>> >> just to shed some light.<br>
>>>> >> One of the reasons it works this way is because the types the actual<br>
>>>> >> Principal has might not be proxyable.<br>
>>>> >> And spec requires all built-in beans to be decorable - e.g. you need<br>
>>>> them<br>
>>>> >> to be proxyable (although the added value of principal decorator is<br>
>>>> ...eh,<br>
>>>> >> disputable at best?).<br>
>>>> >><br>
>>>> >> Therefore, it is safer/viable to create a proxyable wrapper object<br>
>>>> which<br>
>>>> >> implements Principal only and delegetas calls (that's what Weld<br>
>>>> does).<br>
>>>> >><br>
>>>> >> Otherwise I agree it could be nice to ahve a way to cast the object<br>
>>>> as<br>
>>>> >> the pure Principal interface doesn't help much.<br>
>>>> >><br>
>>>> >> Matej<br>
>>>> >><br>
>>>> >> ----- Original Message -----<br>
>>>> >> > From: "John Ament" <<a href="mailto:john.ament@spartasystems.com" target="_blank">john.ament@spartasystems.com</a>><br>
>>>> >> > To: "cdi-dev" <<a href="mailto:cdi-dev@lists.jboss.org" target="_blank">cdi-dev@lists.jboss.org</a>><br>
>>>> >> > Sent: Wednesday, April 26, 2017 3:54:57 PM<br>
>>>> >> > Subject: [cdi-dev] Types of Principal object<br>
>>>> >> ><br>
>>>> >> ><br>
>>>> >> ><br>
>>>> >> > Hey guys<br>
>>>> >> ><br>
>>>> >> ><br>
>>>> >> ><br>
>>>> >> ><br>
>>>> >> > I raised a bug against the Weld guys, but think its worth an EG<br>
>>>> >> discussion.<br>
>>>> >> > When a Principal object is injected, the only type it has is<br>
>>>> Principal.<br>
>>>> >> It<br>
>>>> >> > does not retain the actual type used at runtime. This threw me off<br>
>>>> on<br>
>>>> >> some<br>
>>>> >> > Keycloak integration I'm working on (in $dayjob). So I was<br>
>>>> wondering, is<br>
>>>> >> > this expected from our POV or should it retain the types of the<br>
>>>> actual<br>
>>>> >> > runtime instance?<br>
>>>> >> ><br>
>>>> >> ><br>
>>>> >> ><br>
>>>> >> ><br>
>>>> >> > John<br>
>>>> >> ><br>
>>>> >> ><br>
>>>> >> ><br>
>>>> >> ><br>
>>>> >> > NOTICE: This e-mail message and any attachments may contain<br>
>>>> >> confidential,<br>
>>>> >> > proprietary, and/or privileged information which should be treated<br>
>>>> >> > accordingly. If you are not the intended recipient, please notify<br>
>>>> the<br>
>>>> >> sender<br>
>>>> >> > immediately by return e-mail, delete this message, and destroy all<br>
>>>> >> physical<br>
>>>> >> > and electronic copies. Thank you.<br>
>>>> >> ><br>
>>>> >> > ______________________________<wbr>_________________<br>
>>>> >> > cdi-dev mailing list<br>
>>>> >> > <a href="mailto:cdi-dev@lists.jboss.org" target="_blank">cdi-dev@lists.jboss.org</a><br>
>>>> >> > <a href="https://lists.jboss.org/mailman/listinfo/cdi-dev" rel="noreferrer" target="_blank">https://lists.jboss.org/mailma<wbr>n/listinfo/cdi-dev</a><br>
>>>> >> ><br>
>>>> >> > Note that for all code provided on this list, the provider<br>
>>>> licenses the<br>
>>>> >> code<br>
>>>> >> > under the Apache License, Version 2<br>
>>>> >> > (<a href="http://www.apache.org/licenses/LICENSE-2.0.html" rel="noreferrer" target="_blank">http://www.apache.org/license<wbr>s/LICENSE-2.0.html</a>). For all other<br>
>>>> ideas<br>
>>>> >> > provided on this list, the provider waives all patent and other<br>
>>>> >> intellectual<br>
>>>> >> > property rights inherent in such information.<br>
>>>> >><br>
>>>> >><br>
>>>> >> ------------------------------<br>
>>>> >><br>
>>>> >> Message: 4<br>
>>>> >> Date: Wed, 26 Apr 2017 17:11:11 +0200<br>
>>>> >> From: arjan tijms <<a href="mailto:arjan.tijms@gmail.com" target="_blank">arjan.tijms@gmail.com</a>><br>
>>>> >> Subject: Re: [cdi-dev] Types of Principal object<br>
>>>> >> To: John Ament <<a href="mailto:john.ament@spartasystems.com" target="_blank">john.ament@spartasystems.com</a>><br>
>>>> >> Cc: cdi-dev <<a href="mailto:cdi-dev@lists.jboss.org" target="_blank">cdi-dev@lists.jboss.org</a>><br>
>>>> >> Message-ID:<br>
>>>> >> <CAE=-AhA0PiXZpSKmy0XYoMxCFuy<wbr>xjV3Wt=jjFzhC=G+LOc9TDA@mail.<br>
>>>> >> <a href="http://gmail.com" rel="noreferrer" target="_blank">gmail.com</a>><br>
>>>> >> Content-Type: text/plain; charset="utf-8"<br>
>>>> >><br>
>>>> >> Hi,<br>
>>>> >><br>
>>>> >> We discussed this very issue in the Security API EG as well. In the<br>
>>>> >> Security API the actual type *MUST* be retained as per the spec<br>
>>>> >> definition.<br>
>>>> >><br>
>>>> >> The problem in CDI, at least in Weld, is that a proxy is injected.<br>
>>>> This<br>
>>>> >> happens via the build-in bean "PrincipalBean extends AbstractEEBean",<br>
>>>> >> where<br>
>>>> >> AbstractEEBean does:<br>
>>>> >><br>
>>>> >> public abstract class AbstractEEBean<T> extends<br>
>>>> >> AbstractStaticallyDecorableBui<wbr>ltInBean<T> {<br>
>>>> >><br>
>>>> >> private final T proxy;<br>
>>>> >><br>
>>>> >> protected AbstractEEBean(Class<T> type, Callable<T> callable,<br>
>>>> >> BeanManagerImpl beanManager) {<br>
>>>> >> super(beanManager, type);<br>
>>>> >> this.proxy = new ProxyFactory<T>(beanManager.ge<wbr>tContextId(),<br>
>>>> >> type,<br>
>>>> >> getTypes(), this).create(new EnterpriseTargetBeanInstance(t<wbr>ype, new<br>
>>>> >> CallableMethodHandler(callable<wbr>)));<br>
>>>> >> }<br>
>>>> >> // ...<br>
>>>> >> }<br>
>>>> >><br>
>>>> >> I'm not even sure if it's possible to downcast the proxy to the<br>
>>>> required<br>
>>>> >> runtime type.<br>
>>>> >><br>
>>>> >> Also note that the Principal can change during the request. The<br>
>>>> simplest<br>
>>>> >> case is when during an http request HttpServletRequest#logout is<br>
>>>> called.<br>
>>>> >><br>
>>>> >> Kind regards,<br>
>>>> >> Arjan Tijms<br>
>>>> >><br>
>>>> >><br>
>>>> >><br>
>>>> >><br>
>>>> >> On Wed, Apr 26, 2017 at 3:54 PM, John Ament <<br>
>>>> <a href="mailto:john.ament@spartasystems.com" target="_blank">john.ament@spartasystems.com</a><br>
>>>> >> ><br>
>>>> >> wrote:<br>
>>>> >><br>
>>>> >> > Hey guys<br>
>>>> >> ><br>
>>>> >> ><br>
>>>> >> > I raised a bug against the Weld guys, but think its worth an EG<br>
>>>> >> > discussion. When a Principal object is injected, the only type it<br>
>>>> has<br>
>>>> >> is<br>
>>>> >> > Principal. It does not retain the actual type used at runtime.<br>
>>>> This<br>
>>>> >> threw<br>
>>>> >> > me off on some Keycloak integration I'm working on (in $dayjob).<br>
>>>> So I<br>
>>>> >> was<br>
>>>> >> > wondering, is this expected from our POV or should it retain the<br>
>>>> types<br>
>>>> >> of<br>
>>>> >> > the actual runtime instance?<br>
>>>> >> ><br>
>>>> >> ><br>
>>>> >> > John<br>
>>>> >> ><br>
>>>> >> > ------------------------------<br>
>>>> >> > NOTICE: This e-mail message and any attachments may contain<br>
>>>> >> confidential,<br>
>>>> >> > proprietary, and/or privileged information which should be treated<br>
>>>> >> > accordingly. If you are not the intended recipient, please notify<br>
>>>> the<br>
>>>> >> > sender immediately by return e-mail, delete this message, and<br>
>>>> destroy<br>
>>>> >> all<br>
>>>> >> > physical and electronic copies. Thank you.<br>
>>>> >> ><br>
>>>> >> > ______________________________<wbr>_________________<br>
>>>> >> > cdi-dev mailing list<br>
>>>> >> > <a href="mailto:cdi-dev@lists.jboss.org" target="_blank">cdi-dev@lists.jboss.org</a><br>
>>>> >> > <a href="https://lists.jboss.org/mailman/listinfo/cdi-dev" rel="noreferrer" target="_blank">https://lists.jboss.org/mailma<wbr>n/listinfo/cdi-dev</a><br>
>>>> >> ><br>
>>>> >> > Note that for all code provided on this list, the provider<br>
>>>> licenses the<br>
>>>> >> > code under the Apache License, Version 2 (<a href="http://www.apache.org/" rel="noreferrer" target="_blank">http://www.apache.org/</a><br>
>>>> >> > licenses/LICENSE-2.0.html). For all other ideas provided on this<br>
>>>> list,<br>
>>>> >> > the provider waives all patent and other intellectual property<br>
>>>> rights<br>
>>>> >> > inherent in such information.<br>
>>>> >> ><br>
>>>> >> -------------- next part --------------<br>
>>>> >> An HTML attachment was scrubbed...<br>
>>>> >> URL: <a href="http://lists.jboss.org/pipermail/cdi-dev/attachments/2017042" rel="noreferrer" target="_blank">http://lists.jboss.org/piperma<wbr>il/cdi-dev/attachments/2017042</a><br>
>>>> >> 6/206ff811/attachment.html<br>
>>>> >><br>
>>>> >> ------------------------------<br>
>>>> >><br>
>>>> >> ______________________________<wbr>_________________<br>
>>>> >> cdi-dev mailing list<br>
>>>> >> <a href="mailto:cdi-dev@lists.jboss.org" target="_blank">cdi-dev@lists.jboss.org</a><br>
>>>> >> <a href="https://lists.jboss.org/mailman/listinfo/cdi-dev" rel="noreferrer" target="_blank">https://lists.jboss.org/mailma<wbr>n/listinfo/cdi-dev</a><br>
>>>> >><br>
>>>> >> Note that for all code provided on this list, the provider licenses<br>
>>>> the<br>
>>>> >> code under the Apache License, Version 2 (<br>
>>>> <a href="http://www.apache.org/license" rel="noreferrer" target="_blank">http://www.apache.org/license</a><br>
>>>> >> s/LICENSE-2.0.html). For all other ideas provided on this list, the<br>
>>>> >> provider waives all patent and other intellectual property rights<br>
>>>> inherent<br>
>>>> >> in such information.<br>
>>>> >><br>
>>>> >> End of cdi-dev Digest, Vol 77, Issue 8<br>
>>>> >> ******************************<wbr>********<br>
>>>> >><br>
>>>> ><br>
>>>> ><br>
>>>> -------------- next part --------------<br>
>>>> An HTML attachment was scrubbed...<br>
>>>> URL: <a href="http://lists.jboss.org/pipermail/cdi-dev/attachments/2017042" rel="noreferrer" target="_blank">http://lists.jboss.org/piperma<wbr>il/cdi-dev/attachments/2017042</a><br>
>>>> 6/ebea1962/attachment.html<br>
>>>><br>
>>>> ------------------------------<br>
>>>><br>
>>>> ______________________________<wbr>_________________<br>
>>>> cdi-dev mailing list<br>
>>>> <a href="mailto:cdi-dev@lists.jboss.org" target="_blank">cdi-dev@lists.jboss.org</a><br>
>>>> <a href="https://lists.jboss.org/mailman/listinfo/cdi-dev" rel="noreferrer" target="_blank">https://lists.jboss.org/mailma<wbr>n/listinfo/cdi-dev</a><br>
>>>><br>
>>>> Note that for all code provided on this list, the provider licenses the<br>
>>>> code under the Apache License, Version 2 (<a href="http://www.apache.org/license" rel="noreferrer" target="_blank">http://www.apache.org/license</a><br>
>>>> s/LICENSE-2.0.html). For all other ideas provided on this list, the<br>
>>>> provider waives all patent and other intellectual property rights inherent<br>
>>>> in such information.<br>
>>>><br></div></div><span class="gmail-">
>>>> End of cdi-dev Digest, Vol 77, Issue 10<br>
>>>> ******************************<wbr>*********<br>
>>>><br>
>>><br>
>>><br>
>>> ______________________________<wbr>_________________<br>
>>> cdi-dev mailing list<br>
>>> <a href="mailto:cdi-dev@lists.jboss.org" target="_blank">cdi-dev@lists.jboss.org</a><br>
>>> <a href="https://lists.jboss.org/mailman/listinfo/cdi-dev" rel="noreferrer" target="_blank">https://lists.jboss.org/mailma<wbr>n/listinfo/cdi-dev</a><br>
>>><br>
>>> Note that for all code provided on this list, the provider licenses the<br></span><span class="gmail-">
>>> code under the Apache License, Version 2 (<a href="http://www.apache.org/license" rel="noreferrer" target="_blank">http://www.apache.org/license</a><br>
>>> s/LICENSE-2.0.html). For all other ideas provided on this list, the<br>
>>> provider waives all patent and other intellectual property rights inherent<br>
>>> in such information.<br>
>>><br>
>><br>
>><br>
><br></span><span class="gmail-">
-------------- next part --------------<br>
An HTML attachment was scrubbed...<br></span>
URL: <a href="http://lists.jboss.org/pipermail/cdi-dev/attachments/20170426/b488a2eb/attachment.html" rel="noreferrer" target="_blank">http://lists.jboss.org/piperma<wbr>il/cdi-dev/attachments/2017042<wbr>6/b488a2eb/attachment.html</a><span class="gmail-"><br>
<br>
------------------------------<br>
<br>
______________________________<wbr>_________________<br>
cdi-dev mailing list<br>
<a href="mailto:cdi-dev@lists.jboss.org" target="_blank">cdi-dev@lists.jboss.org</a><br>
<a href="https://lists.jboss.org/mailman/listinfo/cdi-dev" rel="noreferrer" target="_blank">https://lists.jboss.org/mailma<wbr>n/listinfo/cdi-dev</a><br>
<br>
Note that for all code provided on this list, the provider licenses the code under the Apache License, Version 2 (<a href="http://www.apache.org/licenses/LICENSE-2.0.html" rel="noreferrer" target="_blank">http://www.apache.org/license<wbr>s/LICENSE-2.0.html</a>). For all other ideas provided on this list, the provider waives all patent and other intellectual property rights inherent in such information.<br>
<br></span>
End of cdi-dev Digest, Vol 77, Issue 17<br>
******************************<wbr>*********<br>
</blockquote></div><br></div></div>
<br>______________________________<wbr>_________________<br>
cdi-dev mailing list<br>
<a href="mailto:cdi-dev@lists.jboss.org">cdi-dev@lists.jboss.org</a><br>
<a href="https://lists.jboss.org/mailman/listinfo/cdi-dev" rel="noreferrer" target="_blank">https://lists.jboss.org/<wbr>mailman/listinfo/cdi-dev</a><br>
<br>
Note that for all code provided on this list, the provider licenses the code under the Apache License, Version 2 (<a href="http://www.apache.org/licenses/LICENSE-2.0.html" rel="noreferrer" target="_blank">http://www.apache.org/<wbr>licenses/LICENSE-2.0.html</a>). For all other ideas provided on this list, the provider waives all patent and other intellectual property rights inherent in such information.<br></blockquote></div><br></div></div>