[
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)