You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@servicemix.apache.org by "Jean-Baptiste Onofré (JIRA)" <ji...@apache.org> on 2016/03/23 14:09:25 UTC

[jira] [Assigned] (SM-2903) org.apache.servicemix.bundles.spring-webmvc does not have Import-Package for org.springframework.cglib.reflect

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

Jean-Baptiste Onofré reassigned SM-2903:
----------------------------------------

    Assignee: Jean-Baptiste Onofré

> org.apache.servicemix.bundles.spring-webmvc does not have Import-Package for org.springframework.cglib.reflect
> --------------------------------------------------------------------------------------------------------------
>
>                 Key: SM-2903
>                 URL: https://issues.apache.org/jira/browse/SM-2903
>             Project: ServiceMix
>          Issue Type: Bug
>          Components: bundles
>            Reporter: Nick Clarke
>            Assignee: Jean-Baptiste Onofré
>             Fix For: bundles-2016.03
>
>
> org.apache.servicemix.bundles:org.apache.servicemix.bundles.spring-webmvc:4.2.4.RELEASE_1 does not have Import-Package for {{org.springframework.cglib.reflect}}.
> This causes it to fail at runtime for some code paths using spring annotation config and MVC, because a class from that package is loaded via reflection - see below.
> It does already have imports for other cglib packages because they're used directly, so the package-time bytecode scanner found them:
> {code}
>     org.springframework.cglib.core
>         version="[4.2.4.RELEASE,4.3)"
>         resolution:=optional
>     org.springframework.cglib.proxy
>         version="[4.2.4.RELEASE,4.3)"
>         resolution:=optional
> {code}
> What breaks? org.springframework.cglib.core.AbstractClassGenerator.create fails when using spring-mvc with annotation config. (AbstractClassGenerator gets invoked by org.springframework.context.annotation.ConfigurationClassEnhancer$BeanMethodInterceptor.intercept, and tries to load org.springframework.cglib.reflect.FastClass via reflection, which fails because the package isn't imported)
> Fix: add a line here: https://github.com/apache/servicemix-bundles/blob/master/spring-webmvc-4.2.4.RELEASE/pom.xml#L86
> ...with an explicit import for this package:
> {code}
> org.springframework.cglib.reflect;version="[${pkgVersion},4.3)";resolution:=optional,
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)