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

Andriy Redko resolved CXF-8009.
-------------------------------
    Resolution: Fixed

> CXF should not use ClassUtils for cglib checks
> ----------------------------------------------
>
>                 Key: CXF-8009
>                 URL: https://issues.apache.org/jira/browse/CXF-8009
>             Project: CXF
>          Issue Type: Bug
>          Components: JAX-RS
>    Affects Versions: 2.7.18, 3.2.8, 3.3.1
>            Reporter: Attila Király
>            Assignee: Andriy Redko
>            Priority: Major
>             Fix For: 3.2.9, 3.3.2
>
>          Time Spent: 20m
>  Remaining Estimate: 0h
>
> When using lambda to implement a jax-rs {{StreamingOutput}} we get a no 
> message body writer found error.
> However if we use an anonymous class instead of the lambda then it works.
> This happens because CXF uses the spring method 
> {{ClassUtils.isCglibProxyClass()}} for detecting cglib classes. However that 
> method is not strict enough and incorrectly marks every lambda class as cglib 
> as well. This causes CXF to get the superclass which will always be 
> {{Object.class}} for which there is no message body writer.
> According to the [feedback 
> received|https://github.com/spring-projects/spring-framework/issues/22706] on 
> the spring project instead of {{ClassUtils.isCglibProxyClass()}} (which got 
> deprecated) people should use other methods, for example 
> {{AopUtils.isCglibProxy()}} which is more strict.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to