[ 
https://issues.apache.org/jira/browse/OWB-463?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Eric Covener resolved OWB-463.
------------------------------

    Resolution: Fixed

> EjbDefinitionUtility.defineEjbBeanProxy() should be able to create proxies 
> for no-interface local beans
> -------------------------------------------------------------------------------------------------------
>
>                 Key: OWB-463
>                 URL: https://issues.apache.org/jira/browse/OWB-463
>             Project: OpenWebBeans
>          Issue Type: Improvement
>          Components: Java EE Integration
>    Affects Versions: 1.0.0-alpha-2
>            Reporter: Eric Covener
>            Assignee: Eric Covener
>             Fix For: 1.0.0-alpha-3
>
>   Original Estimate: 1h
>  Remaining Estimate: 1h
>
> Sometimes callers of EjbDefinitionUtility.defineEjbBeanProxy() will have to 
> pass the local bean class, when @LocalBean is the only valid local business 
> "interface".
> But, we can't pass the bean class to the proxyFactory.setInterfaces() as this 
> causes an exeption in javassist since it's not really an interface that can 
> be implemented.  On my stack, I see
> Caused by: java.lang.RuntimeException: by 
> java.lang.IncompatibleClassChangeError: foo.classWithLocalBeanView
>         at 
> javassist.util.proxy.ProxyFactory.createClass3(ProxyFactory.java:509)
>         at 
> javassist.util.proxy.ProxyFactory.createClass2(ProxyFactory.java:486)
>         at 
> javassist.util.proxy.ProxyFactory.createClass1(ProxyFactory.java:422)
>         at 
> javassist.util.proxy.ProxyFactory.createClass(ProxyFactory.java:394)
>         at 
> org.apache.webbeans.util.SecurityUtil$PrivilegedActionForProxyFactory.run(SecurityUtil.java:301)
>         at 
> java.security.AccessController.doPrivileged(AccessController.java:202)
>         at 
> org.apache.webbeans.util.SecurityUtil.doPrivilegedCreateClass(SecurityUtil.java:184)
>         at 
> org.apache.webbeans.proxy.JavassistProxyFactory.defineEjbBeanProxyClass(JavassistProxyFactory.java:149)
>         at 
> org.apache.webbeans.ejb.common.util.EjbDefinitionUtility.defineEjbBeanProxy(EjbDefinitionUtility.java:73)
> Simply calling proxyFactory.setSuperClass() seems sufficient and makes sense.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to