Alexander Larsen created OWB-1416:
-------------------------------------

             Summary: Possible misintepretation of spec regarding Unproxyable 
bean types
                 Key: OWB-1416
                 URL: https://issues.apache.org/jira/browse/OWB-1416
             Project: OpenWebBeans
          Issue Type: Bug
            Reporter: Alexander Larsen


OWB seems to throw an exception for all unproxyable normal scoped beans. I 
think that this might be incorrect.

The 
[specification|https://docs.jboss.org/cdi/spec/2.0/cdi-spec.html#unproxyable] 
says the "A bean type must be proxyable if an injection point resolves to a 
bean", not that all the types of the bean must be proxyable. In other words, as 
long as the bean is a legal bean, and all injection point resolving to this 
bean is a proxyable type - no exception should be thrown.

In the part about [contextual 
references|https://docs.jboss.org/cdi/spec/2.0/cdi-spec.html#contextual_reference],
 there is further indications that unproxyable types should be allowed in the 
set of types for the bean. It's only when you try to get a reference(injected 
or by bean manager) to an unproxyable type, and the bean must be proxied 
(normal scoped, intercepted or decorated) an exception should thrown.

Also, the [Weld user guide suggests introducing an interface as a solution to 
having an unproxyable 
bean|https://docs.jboss.org/weld/reference/latest/en-US/html_single/#_client_proxies].

The current OWB implementation makes a pattern of having an interface and (one 
or more) implementation class with final fields/methods somewhat difficult :)



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to